开发者社区> 问答> 正文

如何逐行合并CSV文件

您好,我是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

展开
收起
is大龙 2020-03-24 22:55:12 658 0
1 条回答
写回答
取消 提交回答
  • 使用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

    2020-03-24 22:55:20
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载