繁体   English   中英

如何基于另一个 csv 文件向 csv 文件添加列?

[英]How do I add a column to a csv file based on another csv file?

假设我有两个 CSV 文件,它们的 ID 字段包含一些信息。 我想通过比较 ID 信息将文件一中的信息添加到文件二(通过创建第三个文件)。

File 1:
ID   Age   Food
A-1   15   Chips
B-2   26   Donuts
C-3   8    Candy
D-4   35   None

File 2:
ID   Name
C-3  Cindy    
D-4  Bob
B-2  Dunkey
A-1  Chris

我希望 output 将名称列放在与 ID 相关的文件 1 的 Age 和 Id 列之间。 我知道这要求很多,但任何帮助将不胜感激。 理想output:

File 3:
ID    Name    Age   Food
A-1   Chris    15   Chips
B-2   Dunkey   26   Donuts
C-3   Cindy    8    Candy
D-4   Bob      35   None

即使 ID 像文件 2 中那样乱序,output 也不会改变。

您正在查看的操作称为连接,在 pandas 中可以使用 function .merge()来实现。 在您的情况下,您应该在列ID上加入两个数据框。

file_1 = pd.read_csv('C:\Users\Location_of_file_1.csv')
file_2 = pd.read_csv('C:\Users\Location_of_file_2.csv')

阅读文件后,您可以使用以下语法加入它们:

file_3 = file_1.merge(file_2,how='left',on='ID')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM