[英]Using Pandas how to copy row value based on two Columns from different csv file
我正在使用 pandas 轉換 csv 數據,但我被困在這里。
我有兩個 CSV 文件 Test1.csv 和 Test2.csv。 兩個文件都包含兩列 ID 和 Name
根據Test1.csv ID,我試圖在Test2.csv中找到一個ID值,並找到與該ID對應的名稱,並將其復制到一個新文件output.csv中。
例如:
我有一個文件 Test1.csv
ID,Name
1,John
2,Doe
3,Adam
4,Casy
5,Jane
6,Elot
7,Doe
8,xavi
和另一個文件 Test2.csv
ID,Name
1,Casy
3,Adam
2,Tom
4,Bruno
5,Johnop
6,John
基於 Test1.csv 的 ID,我試圖在 Test2.csv 中查找具有相應名稱值的 ID 值,並將其存儲在具有 oldName 和 newName 列的新文件中,如 output.csv 文件中所述。
預期 Output:output.csv
oldName,ID,newName
John,1,Casy
Doe,2,Tom
Adam,3,Adam
Casy,4,Bruno
Jane,5,Johnop
Elot,6,John
Doe,7,
xavi,8,
將 Test1.csv 和 Test2.csv 讀取為 pandas df
試試output = Test1.merge(Test2,left_on='ID',right_on='ID',how='left')
並將 output df 保存為 output.csv
嘗試這個:
df1 = pd.read_csv('Test1.csv')
df2 = pd.read_csv('Test2.csv')
merged = pd.merge(df1, df2, on='ID', how='left').fillna('')
merged = merged.rename(columns={'Name_x': 'oldName', 'Name_y': 'newName'})
merged[['oldName', 'ID', 'newName']].to_csv('output.csv', index=False)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.