读取熊猫文件列表时出现循环错误

时间:2018-10-22 01:25:54

标签: pandas

我想使用循环从列表中读取多个文件。如果我将列表放在文件路径字段中,则会出现错误。我想知道为什么。

import pandas as pd

file_list = [aaa.csv, bbb.csv, ccc.csv]

for n in range(2):

    train[n] = pd.read_csv("file_list[n]")

导致此错误:

  

文件b'file_list [n]'不存在.....

1 个答案:

答案 0 :(得分:0)

您当前正在尝试打开一个字面称为file_list[n]的文件,并且没有这样的文件。请尝试:

train[n] = pd.read_csv(file_list[n])
      # no quotes here ^^^^^^^^^^^^

如果省略引号,则表达式file_list[n]的值将为列表中的第n个文件名,并且该文件将被打开。

请注意,这可能仍然会失败,因为变量train尚未初始化。因此,您可以从train = []开始创建一个空列表,然后向该列表添加append个新元素。您的代码如下:

import pandas as pd

file_list = ['aaa.csv', 'bbb.csv', 'ccc.csv']
train = []

for n in range(2):
    train.append(pd.read_csv(file_list[n]))

如果您想成为真正的铁杆,甚至可以写作

import pandas as pd

train = [pd.read_csv(f) for f in ['aaa.csv', 'bbb.csv', 'ccc.csv']]