当前位置:首页 >> 脚本专栏

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导入数据就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。