这比我想象的要难,但我有一个包含.csv格式的~100个数据集的文件夹。
我想创建一个包含以下字段的.csv文件:
user_profile.csv
/Users/yuqli/project/user_profile.csv
我想用bash命令来做这件事。但到目前为止,我只能做到:
ls >> out.csv
将所有文件名写入txt文件...我看到有些人使用for循环,但操作.csv文件中的行似乎是禁止的,我不知道要放在for循环中的内容......
我最好只使用Python吗?任何帮助表示赞赏...谢谢!
答案 0 :(得分:0)
感谢上面大师的建议,我想出了这个Python程序,1)提取文件名,2)提取每个文件中的字段名称。欢迎任何评论。谢谢!
import os
import csv
info = {} # store all information into a Python dictionary
for filename in os.listdir(os.getcwd()):
with open(filename, newline='') as f:
reader = csv.reader(f)
row1 = next(reader)
info[filename] = row1
path = os.getcwd()
header = 'field, dataset, path'
write_file = "output.csv"
with open(write_file, "w") as output:
output.write(header + '\n')
for key, value in info.items():
for elem in value:
curr_path = path + key
line = '{0}, {1}, {2}'.format(elem, key, curr_path)
output.write(line + '\n')