1
的移位如果我有一個熊貓DataFrame
與MultiIndex
其中所述第一電平符號,第二級是日期,什麼是執行ewma
或對數據的操作shift
最簡單的方法。EWMA或多指標
目前天真地移動符號上的移位。
也許我需要使用Panel
?
使用:
In [13]: pd.concat({"GOOG": pd.DataFrame({'price':[100,101]},index=["2013-1-1","2013-1-2"]),"AAPL": pd.DataFrame({'price':[100,101]},index=pd.to_datetime(["2013-1-1","2013-1-2"]))}, axis=0, names=["Symbol", "Date"])
Out[13]:
price
Symbol Date
AAPL 2013-1-1 100
2013-1-2 101
GOOG 2013-1-1 100
2013-1-2 101
In [17]: df.shift()
Out[17]:
price
Symbol Date
AAPL 2013-1-1 NaN
2013-1-2 100
GOOG 2013-1-1 101
2013-1-2 100
這看起來似乎是工作,但Panel
佈局絕對不是直觀: df.to_panel().shift(1, axis="minor").ix["price"]
工程。 'ewma'可以類似地解決:'df.groupby(level = 0).apply(lambda x:pd.ewma(x,com = 2))' –