1
의 시프트 I가 제 1 레벨은 심볼 인 MultiIndex
와 판다 DataFrame
있다면, 두 번째 레벨은 일이고, ewma
또는 데이터에 shift
동작을 수행하는 가장 쉬운 방법은 무엇입니까.EWMA 또는 MultiIndex
현재 기호를 순조롭게 이동하는 이동이 있습니다.
아마 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))' –