Python 如何重命名文件夹中多个csv文件中的列?

Python 如何重命名文件夹中多个csv文件中的列?,python,pandas,Python,Pandas,我在一个文件夹中有两个csv文件 如何重命名文件夹中所有文件的列,如下所示 S.No Fruit Vendor Price 输入: 预期产出: 文件df1 S.No Fruit VendorA PriceA 1 Apple AB 89 2 Banana CA 72 S.No Fruit Vendor Price 1 Apple AB 89 2

我在一个文件夹中有两个csv文件

如何重命名文件夹中所有文件的列,如下所示

S.No    Fruit   Vendor  Price       
输入:

预期产出:

文件df1

S.No    Fruit   VendorA PriceA
1       Apple     AB    89
2       Banana    CA    72      
S.No    Fruit   Vendor  Price
1       Apple     AB    89
2       Banana    CA    72      
文件df2

S.No    Fruit   VendorB PriceB
1       Mango       AB  55
2       Watermelon  BC  23
S.No    Fruit   Vendor  Price
1       Mango       AB  55
2       Watermelon  BC  23
预期产出:

文件df1

S.No    Fruit   VendorA PriceA
1       Apple     AB    89
2       Banana    CA    72      
S.No    Fruit   Vendor  Price
1       Apple     AB    89
2       Banana    CA    72      
文件df2

S.No    Fruit   VendorB PriceB
1       Mango       AB  55
2       Watermelon  BC  23
S.No    Fruit   Vendor  Price
1       Mango       AB  55
2       Watermelon  BC  23

在数据帧中读取文件:

df = pd.read_csv('df1.csv')
为列列表指定所需的名称 将此列分配给数据帧 将此数据帧写入另一个csv
对所有数据帧执行此操作。如果您不严格要求使用熊猫,请告诉我这是否有帮助。

。还有其他的解决方案比panda更好

import shutil
import glob

files = glob.glob(".\*.csv")

for i in range(len(files)):
    from_file = open(files[i]) 

    to_file = open(files[i], mode="w")
    to_file.write("S.No,Fruit,Vendor,Price\n")
    shutil.copyfileobj(from_file, to_file)
这样,您可以使用
.csv
扩展名获取文件夹中的所有文件。你甚至连一行字都不读。因此,如果csv文件变大,这将更快地工作。

您可以使用以下方法:

files = ['df1.csv', 'df2.csv']
for file in files:
    with open(file, 'r') as f:
        data = f.readlines()
    data[0] = 'S.no,Fruit,Vendor,Price'+'\n'
    with open(file, 'w') as f:
        for element in data:
            f.write(element)

请提供一个最小的示例,而不是期望人们离开站点。请展示您解决此问题的尝试。@Mad Physicast我知道如何重命名列,但我不知道如何为多个文件重命名。df1.rename(columns={'oldName1':'newName1','oldName2':'newName2'},inplace=True)这是针对单个csv的,我希望它适用于Folder中的所有文件,然后只需使用上述步骤创建一个函数。确定即可