2
我試圖在熊貓數據框中設置一個新列(實際上是兩列),數據來自其他數據框。根據其他數據框向熊貓數據框添加新列
我有以下兩種dataframes(他們是爲了這個目的爲例,原來dataframes是如此大得多):
In [116]: df0
Out[116]:
A B C
0 0 1 0
1 2 3 2
2 4 5 4
3 5 5 5
In [118]: df1
Out[118]:
A D E
0 2 7 2
1 6 5 5
2 4 3 2
3 0 1 0
4 5 4 6
5 0 1 0
而且我希望有一個新的數據框(或添加到DF0,等等)如:
df2:
A B C D E
0 0 1 0 1 0
1 2 3 2 7 2
2 4 5 4 3 2
3 5 5 5 4 6
正如可以看到,在所得到的數據幀不存在與A = 6的行,其存在於DF1但不是在DF0。此外,A = 0的行在df1中被複制,但不在df2的結果中。
實際上,我在選擇方法時遇到了問題。我可以這樣做:
df1.loc[df1['A'].isin(df0['A'])]
但我不知道如何申請跟上的唯一數據(請記住,DF1可以包含重複的數據)的一部分,並添加兩列到DF2數據集(或將其添加到df0)。 我在這裏搜索,我不知道如何應用像groupby,甚至地圖。
有什麼想法?
謝謝!
我想它應該是:'pd.merge(DF0,DF1,上= [ 'A'])' – MaxU