我从这里的熊猫DataFrame文档开始:http://pandas.pydata.org/pandas-docs/stable/dsintro.html
我想用时间序列计算中的值迭代地填充DataFrame。所以基本上,我想用列A,B和时间戳行初始化DataFrame,全部为0或全部为NaN。
然后,我会添加初始值,并遍历这些数据,从之前的行计算新行,比如row[A][t] = row[A][t-1]+1
左右。
我目前正在使用下面的代码,但我觉得它有点难看,而且肯定有一种方法可以直接使用DataFrame来完成这项工作,或者只是更好的方法。注意:我使用的是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
https://stackoverflow.com/questions/13784192
复制相似问题