首页 > 解决方案 > 用新行将 csv 与 Pandas 连接起来

问题描述

我试图连接多个 csv,但输出文件在一行中包含所有数据。如何在给出输出时添加换行符。这是我的示例代码

from os import chdir
from glob import glob
import pandas as pdlib

# Produce a single CSV after combining all files
def produceOneCSV(list_of_files, file_out):
   # Consolidate all CSV files into one object
   result_obj = pdlib.concat([pdlib.read_csv(file) for file in list_of_files], sort=False)
   # Convert the above object into a csv file and export

   result_obj.to_csv(file_out, index=False, encoding="utf-8")

# Move to the path that holds our CSV files
csv_file_path = 'Path_for_all_the_csv/'
chdir(csv_file_path)

# List all CSV files in the working dir
file_pattern = ".csv"
list_of_files = [file for file in glob('*.csv')]
print(list_of_files)

file_out = "ConsolidateOutput.csv"
produceOneCSV(list_of_files, file_out)


标签: pythonpandas

解决方案


当您连接多个数据框时,您可以指定轴,无论您是喜欢连接列还是行。

例如

   result_obj = pdlib.concat([pdlib.read_csv(file) for file in list_of_files], sort=False, axis='columns')

在此处查看 concat 函数文档。


推荐阅读