2017-10-09 51 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