如何在公共列上的python中连接两个CSV文件

时间:2018-01-29 12:55:17

标签: python csv

我的file1.csv包含以下字段:

Name,EmailId,City
Roger,roger@gmail.com,pune

第二个文件file2.csv包含以下字段:

City,State
Pune,Maharashtra
Mumbai,Maharashtra

所以我想要一个包含以下内容的输出文件:

Roger,roger@gmail.com,Pune,Maharashtra

我该怎么办? 我写了下面的代码。

def getStateof():
    reader1 = csv.reader(open(r'C:\Users\admin\Desktop\compare\allUsers1.csv', 'r'), delimiter=',')
    reader2 = csv.reader(open(r'C:\Users\admin\Desktop\compare\mahrashtra.csv', 'r'), delimiter=',')
    for row1 in reader1: 
        for row2 in reader2:
            if(row1[5]==row2[1]):
                print(row1)
getStateof()   

1 个答案:

答案 0 :(得分:0)

这应该有效。将一个数据帧合并到另一个数据帧上。

import pandas as pd

df1 = pd.read_csv('file1.csv')
df2 = pd.read_csv('file2.csv')

df1.merge(df2, how='left', on='City')