如何合并两个csv文件?



我正在尝试在python中合并两个csv文件。

我可以合并两个csv文件在正常的方式通过以下代码:

import os
import glob
import pandas as pd
import shutil
from natsort import natsorted
dir = r"./data/"
#if not os.path.exists(dir):
#    os.mkdir(dir)
extension = 'csv'
all_filenames = [i for i in natsorted(glob.glob('./data/*.{}'.format(extension)))]
#srt_files = natsorted(all_filenames)
combined_csv = pd.concat([pd.read_csv(f) for f in all_filenames ])
combined_csv.to_csv( os.path.join(dir , "train.csv"), index=False, encoding='utf-8-sig')

但是我现在必须用不同的方法合并它们。

我想新建的csv格式为

|header | header |...| header|
-------------------------------
|1st row from 1st row of csv A|
|2nd row from 1st row of csv B|
|3rd row from 2nd row of csv A|
|4th row from 2nd row of csv B|

我想从csv a和csv B中创建一个新的csv,其中新的csv的行将包含上述格式的行。比如csv A, csv B, csv A, csv B, ......

我可以得到一些提示或帮助,使新的csv在这种格式?

谢谢

您可以将索引排序在concat

combined_csv = pd.concat([pd.read_csv(f) for f in all_filenames]).sort_index()

则重置索引,

combined_csv = pd.concat([pd.read_csv(f) for f in all_filenames]).sort_index().reset_index(drop=True)

相关内容

  • 没有找到相关文章

最新更新