我想合併兩個DataFrame,同時創建一個多層列命名方案,表示行來自哪個數據幀。例如:合併具有分層列的兩個數據框
In [98]: A=pd.DataFrame(np.arange(9.).reshape(3,3),columns=list('abc'))
In [99]: A
Out[99]:
a b c
0 0 1 2
1 3 4 5
2 6 7 8
In [100]: B=A.copy()
如果我使用pd.merge()
,然後我得到
In [104]: pd.merge(A,B,left_index=True,right_index=True)
Out[104]:
a_x b_x c_x a_y b_y c_y
0 0 1 2 0 1 2
1 3 4 5 3 4 5
2 6 7 8 6 7 8
這是我期待這種說法,我想什麼(但我不知道怎麼弄!)是:
In [104]: <<one or more statements>>
Out[104]:
A B
a b c a b c
0 0 1 2 0 1 2
1 3 4 5 3 4 5
2 6 7 8 6 7 8
可以這樣做不改變原有pd.DataFrame
電話?我正在讀取.csv文件中的數據框中的數據,這可能是我的問題。
它絕對是! –
如果有人感到困惑,這個答案中的'concat'是'pd.concat()'。 – stackoverflowuser2010