【问题标题】:how to combine csv data in python如何在python中合并csv数据
【发布时间】:2019-11-19 08:24:20
【问题描述】:

我有两个 CSV 文件,我想将它们合并到一个文件中。我的第一个 CSV 文件称为 vector_train.csv,第二个是 label_train.csv

vector_train.csv
v1,v2,v3,v100
12,32,15,30
55,72,45,90

label_train.csv
sentence,label
bad voice,0
good voice,1

我想要这样的输出

vector_train.csv
v1,v2,v3,v100,label
12,32,15,30,0
55,72,45,90,1

请帮帮我

【问题讨论】:

  • 到目前为止你尝试了什么?
  • 所以您希望您的代码始终忽略第二个文件的逗号之前的第一件事?
  • 是的,因为句子已经转换成向量了
  • 用 pandas 读取 csv 读取 csv,然后执行:vector_train_df['label'] = label_train_df['label']

标签: python pandas csv merge


【解决方案1】:

您可以将两个 csv 导入 2 个不同的数据框,然后您可以向第一个数据框添加一个额外的列,并将其分配为等于第二个数据框的列:

import pandas as pd
vector_train_df = pd.read_csv("vector_train.csv")
label_train_df = pd.read_csv("label_train.csv")
vector_train_df['label'] = label_train_df['label'] 

【讨论】:

    【解决方案2】:

    您已经说过如何加入 2 个数据框。我假设您想逐行加入它们:

    vector = pd.read_csv('vector_train.csv')
    label = pd.read_csv('label_train.csv')
    
    vector['label'] = label['label']
    vector.head()
    

    输出:

    v1  v2  v3  v100  label
    12  32  15  30    0
    55  72  45  90    1
    

    【讨论】:

    • 哇非常感谢它的工作,我尝试使用循环,让我很困惑
    【解决方案3】:

    您可以使用 pandas 数据框来读取 csv 文件 https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html

    然后将两个文件合并为一个数据框 https://stackoverflow.com/questions/12850345/how-to-combine-two-data-frames-in-python-pandas

    然后保存在 csv 文件中 https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.to_csv.html

    【讨论】:

      猜你喜欢
      • 2021-05-15
      • 1970-01-01
      • 2011-01-31
      • 1970-01-01
      • 2021-09-15
      • 1970-01-01
      • 1970-01-01
      • 2018-08-14
      相关资源
      最近更新 更多