我有两个巨大的CSV文件,希望它们使用python pandas加入一个新的CSV文件中,主键是id_student,可以将不同的列成功地连接在一起,但是当我输出到一个新的CSV文件时,整个数据只会存在于第一行,不同的列,例如,第1行的第1列将是id_student,就像:
0 12345
1 12344
然后第1行的列将为final_result,格式如下:
0 Pass
1 Pass
但是我的预期输出将是:
0 12345 Pass
1 12344 Pass
有什么办法可以修复输出格式?
def plotlyGraph(self):
df = pandas.read_csv('studentAssessment.csv')
dc = pandas.read_csv('studentInfo.csv')
res = pandas.merge(df,dc, on=['id_student'], how='outer')
a=res['id_student']
b=res['final_result']
c=res['score']
d=res['id_assessment']
e=res['region']
with open("new.csv", "w", newline="") as csvfile:
writer = csv.writer(csvfile)
writer.writerow([a,b,c,d,e])
答案 0 :(得分:0)
我假设您的126.3125
126.25694444444443
126.2152777777778
126.3125
有2列:df
和id_student
,而id_assessment
有2列:dc
和id_student
。试试这个:
final_result
输出
df = pandas.read_csv('studentAssessment.csv')
dc = pandas.read_csv('studentInfo.csv')
res = df.merge(dc, on=['id_student'], how='outer')
print(res)
要存储在 id_student id_assessment final_result
0 0 12345 pass
1 1 12344 pass
文件中:
csv