2017-10-09 47 views
0

我有一个从win2com导入的python对象,其中包含股票报价。 numbars是股票历史记录中的小节数。 quotations是包含股票报价的对象。将此对象的股票行情数据存储到python熊猫数据框中

要检索并存储价格和日期,Python代码将如下所示;

for x in range(0,num_bars): 
    date_quote[x] = quotations(x).Date.date() 
    close[x] = quotations(x).Close 
    open[x] = quotations(x).Open 
    high[x] = quotations(x).Low 
    low[x] = quotations(x).High 
    volume[x] = quotations(x).Volume 
    open_int[x] = quotations(x).OpenInt 

我刚刚发现熊猫数据框中今天,并认为这将是更好的股票行情数据存储到数据帧的熊猫要利用周围熊猫建造的生态系统。但是,当我查看由pandas_datareader模块创建的数据帧结构时,它看起来非常复杂。是否有任何方便的方法,如API或库,将quotations对象的股票数据存储到熊猫数据框中?

我使用python V3.6

回答

2

你可以做到以下几点:

import pandas as pd 

df = pd.DataFrame(columns=['Date', 'Close', 'Open', 'Low', 
          'High', 'Volume', 'OpenInt']) 
for i in range(num_bars): 
    df.loc[i] = [quotations(i).Date.date(), 
       quotations(i).Close, 
       quotations(i).Open, 
       quotations(i).Low, 
       quotations(i).High, 
       quotations(i).Volume, 
       quotations(i).OpenInt] 

之后,you'l有dfDataFrame与股票quotati数据。

+0

请问为什么你把它存储在'df.loc'中?这是定制熊猫数据帧的标准存储位置吗? – user781486

+0

df是一个熊猫数据框,或简单的二维表。通过使用.loc [i],您可以通过位置i访问此表的一行。在您接受之后,您可以通过分配长度等于df DataFrame列数的值列表来将值赋予此df行。 –

0

也许你正在寻找:

从pandas_datareader进口数据 AAPL = data.DataReader( 'AAPL', '谷歌',“1980-01-01 “)

+0

我没有使用dataReader从谷歌导入熊猫框架。我想将我的问题中的对象'quotations'导入到熊猫框架中。 – user3848207