将文本文件列表中的元素与CSV文件进行比较,如果元素存在,则将整行从CSV文件打印到第3个文件

时间:2017-10-26 21:31:28

标签: python csv

我有一个大的CSV文件,如

File1.csv

id, First, Last, Address
aa, John, Doe, blah
bb, Bob, Smith, blahblah
cc, Alice, Johnson, blahblah
..

和第二个文件的.txt文件

FILE2.TXT

id 
aa
cc
..

我想输出一个文件,其中包含第一个文件中与第二个文件匹配的所有行

Output.txt或csv

id, First, Last, Address
aa, John, Doe, blah
cc, Alice, Johnson, blahblah
..

我整天都在浏览,但我无法找到答案。我是python的新手,不知道我在做什么

1 个答案:

答案 0 :(得分:0)

使用Pandas将File1和File2作为数据框导入,并使用“id”列作为索引。然后执行内部合并:

import pandas as pd

file1_df = pd.read_csv('File1.csv', index_col=0)
file2_df = pd.read_csv('File2.txt', index_col=0)
merged_df = pd.concat([file1_df, file2_df], axis=1, join='inner')
merged_df.to_csv('Output.csv')