1. 程式人生 > 程式設計 >python實現從wind匯入資料

python實現從wind匯入資料

從wind匯入到的資料的格式是instance。

如下載一系列資產在某一段時間的收盤價格。

一系列資產儲存在list裡面,一併下載。

日期格式為“2018-02-28”。

一個數字串兒表示的日期,記得也可以使用。

匯入資料結果中,如果資料是缺失的,python中顯示為nan。

如果沒有其他引數,用“”表示,跟matlab匯入wind不一樣。

from WindPy import *
w.start()
import pandas as pd
 
assetList = ["000300.SH","000905.SH"]
startDate = "2012-01-02"
endDate = "2013-01-02"
dataImport = w.wsd(assetList,"close",startDate,endDate,"")
#type(dataImport) 型別是instance
#wsd是日期序列的wind匯入函式,"close"是wind匯入的指標名稱
#如果下載其他指標,“”內可以設定相應的引數,比如單位、幣種等。
#通過在wind右下角輸入cg,獲得wind資料下載程式碼生成器頁面
dates = pd.to_datetime(dataImport.Times)
#time series data,日期作為後面df的index
#作為index時,日期格式統一一下
#錯誤:df = pd.DataFrame(dataImport.Data,index = dates.strftime("%Y-%m-%d"),columns = assetList)
#生成一個收盤價格的時間序列表格,行名稱是日期,列名稱是股票程式碼
#dataImport.data的表達方式:列是日期,資產是行,所以需要轉置。要麼在轉置之後加上index和column。
#要麼在加上index和column之後再轉置,但加的時候跟上面的不一樣。
 
#方法一:
df = pd.DataFrame(dataImport.Data).T
df.index = dates.strftime("%Y-%m-%d")
df.columns = assetList
 
#方法二:
df = pd.DataFrame(dataImport.Data,index = assetList,columns = dates.strftime("%Y-%m-%d")).T

以上這篇python實現從wind匯入資料就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。