我在一个文件夹中有两个csv文件
https://www.dropbox.com/sh/jyu2rj2ra01vuvb/AADht6uAhJcjnSjIFpNufVlka?dl=0
如何如下重命名文件夹中所有文件的列
S.No Fruit Vendor Price
输入:
预期输出:
文件df1
S.No Fruit VendorA PriceA
1 Apple AB 89
2 Banana CA 72
文件df2
S.No Fruit VendorB PriceB
1 Mango AB 55
2 Watermelon BC 23
预期输出:
文件df1
S.No Fruit Vendor Price
1 Apple AB 89
2 Banana CA 72
文件df2
S.No Fruit Vendor Price
1 Mango AB 55
2 Watermelon BC 23
答案 0 :(得分:1)
您可以使用此功能:
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)
答案 1 :(得分:0)
读取pandas
个数据帧中的文件:
df = pd.read_csv('df1.csv')
col_list = ['S.No','Fruit','Vendor','Price']
df.columns = col_list
df.to_csv('new_df1.csv', index=False)
对所有数据框执行此操作。让我知道是否有帮助。
答案 2 :(得分:0)
如果您没有严格要求使用熊猫。还有其他解决方案会比熊猫更好。
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文件变大,它的运行速度就会更快。