如何遍历 csv 文件的文件夹并读取每个文件的 header?然后输出到一个文件夹
how to loop through a folder of csv files and read header of each? then output in a folder
我是 python 的新手,需要有关这段代码的帮助。我进行了大量搜索以到达此阶段,但无法自行修复。预先感谢您的帮助。
我想做的是我必须比较一个文件夹中的 100 多个 csv 文件,并且并非所有文件都具有相同的列数或列名。所以我尝试使用 python 来读取每个文件的 headers 并放入一个 csv 文件以输出到文件夹中。
我已经走到这一步了,但我什至不确定我是否走在正确的道路上:
import pandas as pd
import glob
path = r'C:\Users\user1\Downloads16GAdata' # use your path
all_files = glob.glob(path + "/*.csv")
list1 = []
for filename in all_files:
df = pd.read_csv(filename, index_col=None, header=0)
list1.append(df)
frame = pd.concat(list1, axis=0, ignore_index=True)
print(frame)
感谢您的帮助!
您可以创建一个字典,其键是文件名,值是数据框列。使用此字典创建数据框会导致文件名作为索引,列名作为列值。
d = {}
for filename in all_files:
df = pd.read_csv(filename, index_col=None, header=0)
d[filename] = df.columns
frame = pd.DataFrame.from_dict(d, orient='index')
0 1 2 3
file1 Fruit Date Name Number
file2 Fruit Date Name None
我是 python 的新手,需要有关这段代码的帮助。我进行了大量搜索以到达此阶段,但无法自行修复。预先感谢您的帮助。
我想做的是我必须比较一个文件夹中的 100 多个 csv 文件,并且并非所有文件都具有相同的列数或列名。所以我尝试使用 python 来读取每个文件的 headers 并放入一个 csv 文件以输出到文件夹中。
我已经走到这一步了,但我什至不确定我是否走在正确的道路上:
import pandas as pd
import glob
path = r'C:\Users\user1\Downloads16GAdata' # use your path
all_files = glob.glob(path + "/*.csv")
list1 = []
for filename in all_files:
df = pd.read_csv(filename, index_col=None, header=0)
list1.append(df)
frame = pd.concat(list1, axis=0, ignore_index=True)
print(frame)
感谢您的帮助!
您可以创建一个字典,其键是文件名,值是数据框列。使用此字典创建数据框会导致文件名作为索引,列名作为列值。
d = {}
for filename in all_files:
df = pd.read_csv(filename, index_col=None, header=0)
d[filename] = df.columns
frame = pd.DataFrame.from_dict(d, orient='index')
0 1 2 3
file1 Fruit Date Name Number
file2 Fruit Date Name None