1
我可以將兩個DataFrames df1 & df2連接成一個df,但我無法得到我需要的「堆棧」結構 - 請參閱附加圖像。將兩個DataFrames連接成一個共享相同DateIndex的MultiIndex
我如何讓df1 & df2結合共享一個像「堆棧」結構中的DateTimeIndex?
我可以將兩個DataFrames df1 & df2連接成一個df,但我無法得到我需要的「堆棧」結構 - 請參閱附加圖像。將兩個DataFrames連接成一個共享相同DateIndex的MultiIndex
我如何讓df1 & df2結合共享一個像「堆棧」結構中的DateTimeIndex?
我想你需要to_frame
:
df = pd.DataFrame({'AAPL':[1,3,4],
'GOOG_L':[6,7,8]}, index=pd.date_range('2012-01-01', periods=3))
print (df)
AAPL GOOG_L
2012-01-01 1 6
2012-01-02 3 7
2012-01-03 4 8
df1 = df.stack().to_frame('col')
print (df1)
col
2012-01-01 AAPL 1
GOOG_L 6
2012-01-02 AAPL 3
GOOG_L 7
2012-01-03 AAPL 4
GOOG_L 8
df2 = df.unstack().to_frame('col')
print (df2)
col
AAPL 2012-01-01 1
2012-01-02 3
2012-01-03 4
GOOG_L 2012-01-01 6
2012-01-02 7
2012-01-03 8
絕對是最快捷的解決方案!非常感謝你! – artDeco
所期望的輸出?如果缺少第一級Multiindex中的日期時間,它只是顯示事物,實際上它是重複的。你可以檢查它是否添加'.reset_index()' – jezrael
你需要'.unstack()'? – jezrael
.stack()或.unstack()產生一個Series;我需要一個帶MultiIndex的DataFrame。 – artDeco