使用pd.read_csv()读取多个文件,并将每个文件另存为不同的变量

时间:2020-10-01 09:47:05

标签: python pandas dataframe

我有一个文件夹,其中包含多个(超过50个).txt文件,它们都具有相同的结构(相同的列,但有时长度不同)。

是否可以使用pd.read_csv()读取这些文件并将每个文件另存为变量,例如res1 = file1,res2 = file2等?我需要使用python熊猫来读取文件。

我不知道这是否是一个好习惯,但我想避免分别加载每个文件。

2 个答案:

答案 0 :(得分:2)

您可以使用os.listdir()遍历所有文件:

res = [pd.read_csv(file) for file in os.listdir('your_directory')]

每个df将位于其索引处。即res[0]将为df1

答案 1 :(得分:1)

如果这些CSV是大文件,请记住,一次阅读它们可能会耗尽内存。

如果不必同时处理不同的CSV,则可能应该一个个地处理它们。

如果您确实需要将每个文件放在单独的数据框中,并且内存足以完成任务,则只需使用循环并将它们存储在listdict中,或者在这种情况下为{{ list中的1}} –取决于您要做什么:

dicts

@ghandifloss答案也可以很好地满足您的目的。