我從熊貓數據框文檔在這裏開始:http://pandas.pydata.org/pandas-docs/stable/dsintro.html創建一個空的Pandas DataFrame,然後填充它?
我想用時間序列類型的計算迭代填充數據框中的值。 所以基本上,我想初始化數據框與列A,B和時間戳記行,全部爲0或全部NaN。
然後,我會添加初始值,並從這行數據計算行之前的行,例如行[A] [T] =行[A] [T-1] +1左右。
我目前正在使用的代碼如下,但我覺得這是一種醜陋的,必須有一種方法來直接與數據框或一般更好的方式做到這一點。 注意:我正在使用Python 2.7。
import datetime as dt
import pandas as pd
import scipy as s
if __name__ == '__main__':
base = dt.datetime.today().date()
dates = [ base - dt.timedelta(days=x) for x in range(0,10) ]
dates.sort()
valdict = {}
symbols = ['A','B', 'C']
for symb in symbols:
valdict[symb] = pd.Series(s.zeros(len(dates)), dates)
for thedate in dates:
if thedate > dates[0]:
for symb in valdict:
valdict[symb][thedate] = 1+valdict[symb][thedate - dt.timedelta(days=1)]
print valdict
pd.date_range()對我不起作用。我嘗試使用DateRange(來自eclipse的自動完成),但它與字符串一起使用作爲日期格式,對嗎? 整體方法雖然工作(我改變了其他指標)。 –
是date_range是我可能通過升級獲得的新功能,或者它是否在datatime中(我更改爲datetime,b/c我認爲這就是您的意思) –
date_range是用於創建日期時間索引的工廠函數,並且是[ 0.8.0](http://pandas.pydata.org/pandas-docs/version/0.8.0/whatsnew.html?highlight=date_range),我肯定會推薦升級到最新的穩定版本(0.9.1)有很多錯誤修復和新功能。:) –