【问题标题】:Concat dataframes - One with no column nameConcat 数据框 - 一个没有列名
【发布时间】:2020-06-28 00:43:37
【问题描述】:

所以我有 2 个列数相同的 csv 文件。第一个 csv 文件的列名为(年龄、性别)。第二个文件虽然没有像第一个文件那样命名它的列,但它的数据对应于第一个 csv 文件的相应列。如何正确连接它们?

第一个 csv。

第二个 csv。

这就是我阅读文件的方式:

df1 = pd.read_csv("input1.csv")
df2 = pd.read_csv("input2.csv", header=None)

我尝试像这样使用 concat() 但结果我得到 4 列..

df = pd.concat([df1, df2])

【问题讨论】:

  • 到目前为止您尝试过什么?请发布您的代码。
  • 你尝试了什么?请提供可重现的示例代码,显示您的尝试失败的地方。
  • 刚刚编辑了我的帖子

标签: python csv dataframe concat


【解决方案1】:

您还可以使用append 函数。请注意两者的列名相同,否则您将以 4 列结尾。

查看this link,我觉得很有用。

df1 = pd.read_csv("input1.csv")
df2 = pd.read_csv("input2.csv", header = None)
df2.columns = df1.columns
df = df1.append(df2, ignore_index=True)

【讨论】:

    【解决方案2】:

    我找到了解决方案。阅读第二个文件后,我添加了

    df2.columns = df1.columns
    

    按我的意愿工作。我想我下次更好地研究更多:)。谢谢

    最终代码:

    df1 = pd.read_csv("input1.csv")
    df2 = pd.read_csv("input2.csv", header = None)
    df2.columns = df1.columns
    df = pd.concat([df1, df2])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-17
      • 1970-01-01
      • 2019-08-07
      • 2020-02-19
      • 2023-04-05
      相关资源
      最近更新 更多