从文件夹路径读取 CSV 的标题,并将标题行写入另一个结构为表名和列名的 csv



问题:我在一个文件夹中有两个CSV文件名称File1.CSV和File2.CSV,其中CSV的结构如下

File1.csv
Column1 Column2
Data.    Data.
File2.csv
Column3 Column4
最后的文件。csv结构应该是这样的:
Table Name.    Column Names
File1.           Column1
File1.           Column2
File2            Column3
File2            Column4

我写过这样的东西

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)

请建议我把这个写入一个新的csv文件。

为了生成您期望的最终版本,您可能需要为每个文件创建一个结果数据框和一个临时格式化的数据框,然后在每个单独的循环中将它们连接在一起。

下面的代码可以满足您的需求:

result_df = pd.DataFrame(columns=["Table Name", "Column Names"])
for filename in all_files:
df = pd.read_csv(filename)
columns = df.columns.tolist()
formatted_df = pd.DataFrame(data={"Table Name": [filename] * len(columns), "Column Names": columns})
result_df = pd.concat([result_df, formatted_df], axis=0, ignore_index=True)
result_df.to_csv("final_file.csv", index=False)

输出:

tbody> <<tr>12
index表名列名
0File1.csvcol1
File1.csvcol2
File2.csvcol3
3File2.csvcol4

最新更新