【问题标题】:add contents of one csv file to another using python使用python将一个csv文件的内容添加到另一个文件
【发布时间】:2019-02-26 20:14:55
【问题描述】:

如果问题听起来太琐碎但我在论坛上找不到任何解决方案,请提前道歉。

我想合并两个 csv 文件。

file1:
name age city
john 20   abc
jack 15   def
alice 25  ghk

file2:
hobby grade 
tyu    8
ghj    9
hjk    10

output file:

name  age city hobby grade 
john  20  abc  tyu    8
jack  15  def  ghj    9
alice 25  ghk  hjk    10

最好的方法是什么?我们可以使用 pandas 来做到这一点吗?

感谢任何帮助。

谢谢!

【问题讨论】:

标签: python csv merge


【解决方案1】:

我根据您的示例数据假设您正在处理制表符分隔符,而不是逗号。

我相信您尝试执行的操作通常称为连接,而合并是列或索引上的数据库样式连接。也许这就是您在寻找解决方案时遇到困难的原因。

您可以使用pandas 轻松完成您想要的操作,如下所示:

import pandas as pd

a = pd.read_csv("file1.csv", delimiter="\t")
b = pd.read_csv("file2.csv", delimiter="\t")

print(pd.concat([a, b], axis=1).to_csv(index=False, sep="\t"))

结果:

姓名 年龄 城市 爱好 等级 约翰 20 abc tyu 8 杰克 15 def ghj 9 爱丽丝 25 ghk hjk 10

【讨论】:

  • 这是一个csv文件。在给出一个虚拟示例时我应该更加小心。
  • @Aisha 在这种情况下,您可以删除 delimiter="\t"sep="\t" 命名参数。
  • 我需要将结果保存在 csv 文件中,而不是打印出来。所以,我使用下面的行而不是打印。 pd.concat([a, b], axis=1).to_csv('myfile.csv',index=False) 非常感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-11-01
  • 1970-01-01
  • 2013-03-12
  • 2023-03-10
  • 1970-01-01
  • 2014-05-25
  • 1970-01-01
相关资源
最近更新 更多