您好,我是Python的新手,我正在尝试使用这段代码将这两个文件fileA和fileB合并为一个
a = pandas.read_csv(fileA)
b = pandas.read_csv(fileB)
b = b.dropna(axis=1)
merged = b.merge(a, on="day")
merged.to_csv(output, index=False)
但是问题是,它不是逐行合并,而是将fileA的第一行与fileB的所有行合并!下面您将找到一个示例
文件A的内容
numb,day
one,sat
two,sun
three,mon
文件B的内容
day,month,color,shape
sat,apr,black,circle
sun,may,white,triangle
mon,jun,red,square
预期产量
numb,day,month,color,shape
one,sat,apr,black,circle
two,sun,may,white,triangle
three,mon,jun,red,square
我实际上得到的
numb,day,month,color,shape
one,sat,apr,black,circle
one,sat,may,white,triangle
one,sat,mon,jun,red,square
two,sun,apr,black,circle
two,sun,may,white,triangle
two,sun,jun,red,square
.
.
.
那么,如何才能逐行合并文件而不是全部合并呢?或者我在这里到底在做什么错呢?
我正在使用Python 3.7
问题来源:stackoverflow
使用pandas.concat
组合数据框:
a = pandas.read_csv(fileA)
b = pandas.read_csv(fileB)
b = b.dropna(axis=1)
merged = pd.concat([a, b], axis=1)
merged.to_csv('output.csv', index=False)
回答来源:stackoverflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。