任何人都可以检查我的代码有什么问题。 我希望它将两个csv文件合并到一个csv文件中。
我曾试图谷歌,但我仍然无法合并它,它会创建新文件,但不会在里面显示任何内容。 https://stackoverflow.com/a/16266144/7624469
a.csv
ID User
A1 Fi
A2 Ki
b.csv
ID User
A4 Fsdi
A5 Kisd
我想要的输出看起来像这样
combined.csv
ID User
A1 Fi
A2 Ki
A4 Fsdi
A5 Kisd
test.py
import pandas, sys
import pandas as pd
a = pd.read_csv("C:/JIRA Excel File/a.csv")
b = pd.read_csv("C:/JIRA Excel File/b.csv")
merged = a.merge(b, on='ID')
merged.to_csv('C:/JIRA Excel File/result.csv', index=False)
答案 0 :(得分:5)
最好在这里使用pd.concat
来合并这些框架,而不是merge
:
merged = pd.concat([a,b])
您的数据的玩具示例:
a = pd.DataFrame([['Fi'],['Ki']],columns=['User'], index=['A1','A2'],) #'ID')
b = pd.DataFrame([['Fi'],['Ki']],columns=['User'], index=['A4','A5'],) #'ID')
pd.concat([a,b])
将输出:
User
A1 Fi
A2 Ki
A4 Fi
A5 Ki
答案 1 :(得分:5)
使用df.append
:
out = df1.append(df2)
print(out)
ID User
0 A1 Fi
1 A2 Ki
0 A4 Fsdi
1 A5 Kisd
with open('C:/JIRA Excel File/result.csv', 'w', encoding='utf-8') as f:
out.to_csv(f, index=False)
答案 2 :(得分:1)
不要打扰python,只需使用grep的bash:
cat a.csv > combined.csv
tail -n +2 b.csv >> combined.csv