需要使用python合并两个具有相同列数但标题不同的csv文件

时间:2020-06-11 17:51:32

标签: python pandas csv

我有两个输入的csv文件,如下所示:

File1.csv

  1. 演员,电影,导演
  2. 基努·里维斯,约翰·威克,乍得·斯塔赫尔斯基
  3. 汤姆·克鲁斯(Tom Cruise),杰克·里奇(Jack Reacher),克里斯托弗·麦夸里(Christopher McQuarrie)
  4. Rowan Atkinson,Johnny English,Peter Howitt

File2.csv

  1. Chris Pine,Jack Ryan,Kenneth Branagh
  2. Matt Damon,Jason Bourne,Paul Greengrass
  3. Ian Somerhalder,Marco Polo,Kevin Connor

预期输出:

Combine_File1_and_File2.csv

  1. 演员,电影,导演
  2. 基努·里维斯,约翰·威克,乍得·斯塔赫尔斯基
  3. 汤姆·克鲁斯(Tom Cruise),杰克·里奇(Jack Reacher),克里斯托弗·麦夸里(Christopher McQuarrie)
  4. Rowan Atkinson,Johnny English,Peter Howitt
  5. Chris Pine,Jack Ryan,Kenneth Branagh
  6. Matt Damon,Jason Bourne,Paul Greengrass
  7. Ian Somerhalder,Marco Polo,Kevin Connor

两个csv文件-File1.csv和File2.csv具有相同的列数(即3),但是两个csv文件中的第一行都不同(File1.csv具有标头,而File2.csv没有标头) 。我需要将两个csv合并在一起,以使合并后的文件具有来自两个csv文件的所有数据并带有正确的标头。

2 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:-

import pandas as pd
file1 = pd.read_csv('File1.csv')
file2 = pd.read_csv('File2.csv', header=None)

file2.columns=file1.columns
data_final = pd.concat([file1, file2]).reset_index()

答案 1 :(得分:0)

工作代码:

import pandas as pd
filee1 = pd.read_csv(r'C:\Cypher\file1.csv')
filee2 = pd.read_csv(r'C:\Cypher\file2.csv',header=None)
filee2.columns=filee1.columns
data_final = pd.concat([filee1, filee2])
data_final.to_csv(r'C:\Cypher\combineF1F2.csv',index=False)