Python pandas使用不同的标题

时间:2017-11-06 21:11:56

标签: python pandas csv

我做了一些研究,但无法找到我的案例的答案 我有2个csv文件

a.csv

id, fname, lname, address
1, aaa, bbb, ccc
2, abb, ccb, ddd
3, ddd, eee, fff
4, eee, ggg, fff
5, EEE, GGG, RRRR

和第二个文件

b.csv

ID
1
3
5

欲望结果将是(下面的id标题不严格,但id会很好)

id, fname, lname, address
1, aaa, bbb, ccc
3, ddd, eee, fff
5, EEE, GGG, RRRR

我尝试了什么

merged = a.merge(b, left_on = ['id'],
                right_on= ['ID'],
                how = 'inner')
merged.to_csv(r'C:\things\output.csv', index=False)

并且无法为数组错误分配内存...

编辑:

如果标题完全相同(两者都是'id'),下面的代码可以正常工作但生活并不完美

merged = a.merge(b, on = 'id')

2 个答案:

答案 0 :(得分:1)

使用isin

merged=a.loc[a.id.isin(b.ID),:]

答案 1 :(得分:0)

我认为你应该能够做到

n