首页 > 解决方案 > 将新列添加到多个 .csv 并使用文件名填充

问题描述

我是 python 新手,我有一个包含 15 个 excel 文件的文件夹,我正在尝试将每个文件中的特定列重命名为标准名称,例如,我在不同文件上有一个名为“名称和服务器”的列,但它们需要相同的信息,所以我需要将它们重命名为标准名称,如“服务器名称”,但我不知道如何开始

标签: pythonpython-3.x

解决方案


为简单起见,假设您当前的文件夹有一个名为的文件夹folder,所有这 15 个具有以下名称的 excel 文件file_1.xlsx, file_2.xlsx, ......, file_15.xlsx都位于该文件夹中。

现在您可以使用glob来发现文件路径并pandas读取这些路径。将熊猫安装为pip install pandas xlrd.

from glob import glob
import pandas as pd

# discover the path of all the xlsx files
filenames = glob('folder/*.xlsx')  

现在假设您要将列 'name, and server' 重命名为 'nameserver'

for filename in filenames:
    # read each of the file
    df = pd.read_excel(filename)

    # rename the column name
    df = df.rename(columns={'name, and server': 'nameserver'})

    # save the renamed files as csv
    df.to_csv(filename.split('.')[-2] + '.csv')

推荐阅读