如何使用Pandas将文件名列表写入csv文件中的列?我还希望Regex只保留文件名的一部分。
使用csv模块,我这样做了:
import os
import re
import csv
with open("file.csv","w") as write_csv:
fieldnames = ["col1", "col2"]
wr_header = csv.DictWriter(write_csv, fieldnames = fieldnames)
wr_header.writeheader()
wr_data = csv.writer(write_csv, delimiter = "\n")
folder = os.listdir("/User/folder")
for filename in folder:
filesnippet = re.findall("snippet_(.{12})", filename)
wr_data.writerow(filesnippet)
答案 0 :(得分:2)
Pandas数据框可以将列表作为构造函数。真正的问题是你在哪里做正则表达式的工作。在这里,我使用pandas字符串方法extract
,它返回每行的捕获组。
pd.Series(os.listdir(directory)).str.extract(regex).to_csv(filename)