我有一个文件夹,其中包含多个(超过50个).txt文件,它们都具有相同的结构(相同的列,但有时长度不同)。
是否可以使用pd.read_csv()
读取这些文件并将每个文件另存为变量,例如res1 = file1,res2 = file2等?我需要使用python熊猫来读取文件。
我不知道这是否是一个好习惯,但我想避免分别加载每个文件。
答案 0 :(得分:2)
您可以使用os.listdir()遍历所有文件:
res = [pd.read_csv(file) for file in os.listdir('your_directory')]
每个df将位于其索引处。即res[0]
将为df1
答案 1 :(得分:1)
如果这些CSV是大文件,请记住,一次阅读它们可能会耗尽内存。
如果不必同时处理不同的CSV,则可能应该一个个地处理它们。
如果您确实需要将每个文件放在单独的数据框中,并且内存足以完成任务,则只需使用循环并将它们存储在list
或dict
中,或者在这种情况下为{{ list
中的1}} –取决于您要做什么:
dicts
@ghandifloss答案也可以很好地满足您的目的。