[英]Pandas: Add column name to third column for multiple csv files
我在同一目录中有多个 csv 文件。 每个 csv 文件包含 3 列,但在第 3 列中,缺少列名。 要读取所有 csv 个文件,我必须使用error_bad_lines=False
。 现在,我想将列名c3
添加到多个 csv 文件的第三列。
样本 df:
v info
12 days 6
53 x a
42 y b
预计 output:
v info c3
0 12 days 6
1 53 x a
2 42 y b
首先,将索引“v”转换为列
df = df.reset_index()
然后,您可以简单地更改列。
df.columns = ["v", "info", "c3"]
最后,
import pandas as pd
for file in os.listdir(directory):
if file.endswith(".csv"):
df = pd.read_csv(file)
df = df.reset_index() # this is option line
df.columns = ["v", "info", "c3"]
df.to_csv(file)
不确定你的 csv 长什么样,所以我假设你的 csv 是:
v,info,
12,days,6
53,x,a
42,y,b
不管怎样,您可以将所有 csv 文件加载到一个目录中并更改列名,如下所示:
import pandas as pd
import glob
for f in glob.glob("C:\*.csv"):
print(f) # f is a file name
df = pd.read_csv(f)
df.reset_index() # add index column, 0, 1, 2, ...
df.columns = ['v', 'info', 'c3'] # change column names
df.to_csv(f) # save it (overwriting)
您可以在此处详细了解如何使用glob
加载目录中的文件: https://www.geeksforgeeks.org/how-to-use-glob-function-to-find-files-recursively-in-python/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.