首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Python中追加多个CSV文件,并添加表示文件名的附加列?

在Python中追加多个CSV文件并添加表示文件名的附加列,可以按照以下步骤进行操作:

  1. 导入所需的模块:
代码语言:txt
复制
import os
import glob
import pandas as pd
  1. 定义一个函数来读取并追加CSV文件:
代码语言:txt
复制
def append_csv_files(file_pattern, output_file):
    all_files = glob.glob(file_pattern)
    df_list = []
    for file in all_files:
        df = pd.read_csv(file)
        filename = os.path.basename(file)
        df['filename'] = filename
        df_list.append(df)
    combined_df = pd.concat(df_list)
    combined_df.to_csv(output_file, index=False)
  1. 调用函数并传入文件路径模式和输出文件路径:
代码语言:txt
复制
append_csv_files('path/to/csv/files/*.csv', 'path/to/output/combined.csv')

上述代码的解释如下:

  • 第1步中,我们导入了必要的模块,包括os用于操作文件路径,glob用于匹配文件路径模式,pandas用于处理CSV文件。
  • 第2步中,我们定义了一个名为append_csv_files的函数,它接受两个参数:file_pattern表示CSV文件的路径模式,output_file表示输出文件的路径。
  • 在函数内部,我们使用glob.glob函数根据文件路径模式获取所有匹配的CSV文件路径,并将它们存储在all_files列表中。
  • 然后,我们创建一个空的DataFrame列表df_list,用于存储每个CSV文件的数据。
  • 接下来,我们使用pd.read_csv函数读取每个CSV文件的数据,并使用os.path.basename函数获取文件名,并将其存储在名为filename的新列中。
  • 然后,我们将每个DataFrame对象添加到df_list列表中。
  • 在循环结束后,我们使用pd.concat函数将所有DataFrame对象合并为一个DataFrame对象combined_df
  • 最后,我们使用to_csv函数将合并后的DataFrame对象保存为CSV文件,并指定index=False以避免保存索引列。
  • 第3步中,我们调用append_csv_files函数,并传入CSV文件的路径模式和输出文件的路径。

这样,你就可以在Python中追加多个CSV文件,并在合并后的文件中添加表示文件名的附加列了。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券