1
我想組合2個類似的數據幀。我檢查了幾個網站,但找不到我的問題的答案。組合2個數據幀
df1 = DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
'B': ['B0', 'B1', 'B2', 'B3'],
'C': ['C0', 'C1', 'C2', 'C3'],
index=[0, 1, 2])
df2 = DataFrame({'A': ['A0', 'A1', 'A4', 'A3'],
'B': ['B0', 'B1', 'B4', 'B3'],
'D': ['D0', 'D1', 'D4', 'D3']},
index=[0, 1, 2])
我想有
df3 = DataFrame({'A': ['A0', 'A1', 'A3'],
'B': ['B0', 'B1', 'B3'],
'C': ['C0', 'C1', 'C3'],
'D': ['D0', 'D1', 'D3'].
index=[0, 1, 2, 3])
基本上我結合2個dataframes,加列d到第一數據幀。但是我忽略了任何不會有C和D值的行,比如第2行和第4行。 我嘗試過append和concat,但它只是將所有行和所有行堆疊在一起。
謝謝!
謝謝。這正是我需要的。還有一個問題:當我輸入實際列名與ABCD時,輸出數據框中的列總是按照字母順序排列,無論我按什麼順序輸入它們。因此,即使我在香蕉後輸入蘋果,名爲蘋果的列也總是在列香蕉之前 – AK9309
如果您問的是如何重新排列列,您可以傳遞所需順序列表:'df1.merge(df2).ix [: ,['A','D','B','C']]將重新排列列,一般做'df.ix [:, col_list]',其中'col_list'是列的列表將重新排列列訂單 – EdChum
明白了。謝謝! – AK9309