Pandas 是一个强大的 Python 数据分析库,提供了大量的数据结构和数据分析工具。CSV(Comma-Separated Values)是一种常见的数据存储格式,每行代表一条记录,每列代表一个字段。
在 Pandas 中,合并 CSV 文件主要有以下几种方式:
concat
:用于沿指定轴连接 DataFrame 或 Series 对象。merge
:用于根据一个或多个键进行合并。join
:用于根据索引或键进行合并。当你有多个 CSV 文件,需要将它们合并成一个文件进行分析时,可以使用 Pandas 进行合并操作。例如,多个日志文件、多个数据集的合并等。
以下是一个示例代码,展示如何使用 Pandas 合并多个 CSV 文件,并在每行数据中添加文件名作为新列:
import pandas as pd
import os
# 定义文件路径和输出文件路径
input_folder = 'path/to/csv/files'
output_file = 'path/to/output/combined.csv'
# 获取文件夹中的所有 CSV 文件
csv_files = [f for f in os.listdir(input_folder) if f.endswith('.csv')]
# 初始化一个空的 DataFrame
combined_df = pd.DataFrame()
# 遍历每个 CSV 文件
for file in csv_files:
# 读取 CSV 文件
df = pd.read_csv(os.path.join(input_folder, file))
# 添加文件名列
df['filename'] = file
# 将当前文件的数据追加到 combined_df
combined_df = pd.concat([combined_df, df], ignore_index=True)
# 将合并后的数据保存到新的 CSV 文件
combined_df.to_csv(output_file, index=False)
encoding
参数指定正确的编码格式,例如 pd.read_csv(file, encoding='utf-8')
。rename
方法重命名列,避免冲突。通过以上方法,你可以轻松地合并多个 CSV 文件,并在每行数据中添加文件名作为新列。
领取专属 10元无门槛券
手把手带您无忧上云