This question already has answers here:
Pandas Merging 101
(3个答案)
2年前关闭。
我正在寻找合并所有具有共同的'ORG_ID'列的3个数据框。 df1是我的原始数据帧,其org_id计数为154。我想将df1与df2和df3合并,以获取df1中每个组织ID的等级,并且在弄清楚如何执行此操作时遇到了麻烦。
我设法合并了df1和df2,但是由于df2中找不到70 org_id,但可以在df3中找到,所以它得到的新计数是84 org_id,而不是154。我无法弄清楚如何合并所有3个数据框,以便获得df1中所有154个org_id的等级。有任何想法吗?请记住,数据帧的大小各不相同,但我希望对df1中找到的所有154个原始Org_id具有评级。
(3个答案)
2年前关闭。
我正在寻找合并所有具有共同的'ORG_ID'列的3个数据框。 df1是我的原始数据帧,其org_id计数为154。我想将df1与df2和df3合并,以获取df1中每个组织ID的等级,并且在弄清楚如何执行此操作时遇到了麻烦。
我设法合并了df1和df2,但是由于df2中找不到70 org_id,但可以在df3中找到,所以它得到的新计数是84 org_id,而不是154。我无法弄清楚如何合并所有3个数据框,以便获得df1中所有154个org_id的等级。有任何想法吗?请记住,数据帧的大小各不相同,但我希望对df1中找到的所有154个原始Org_id具有评级。
Here was my code to merge df1 and df2 :
df4=pd.merge(df1, df2, left_on = 'ORG_ID', right_on = 'ORG_ID')
Here is a sample of what the dataframes look like:
df1:
Org_id Name
123 House 1
457 House 3
876 House 16
567 House 56
df2:
Org_id Name Rating
123 House 1 10
457 House 3 5
857 House 87 6
df3:
Org_id Name Rating1 org_type location area
123 House 1 10 single family Hamilton Suburban
567 House 56 9 single family Middletown Suburban
最佳答案
df4 = df1.merge(df2, on='ORG_ID', how='left')
df5 = df4.merge(df3, on='ORG_ID', how='left')
df5
关于python - 根据df1- Pandas数据框中的列合并三个数据框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41984972/
10-14 06:44