在PYTHON中将多个文件读入单独的数据帧

时间:2018-02-27 13:00:59

标签: python pandas glob

我想知道在python中是否有一种方法可以从文件夹中读取多个CSV文件,并通过文件名分配给单独的数据框。下面的代码会抛出一个错误,但是显示我粘贴它的点

import glob
for filename in glob.glob('*.csv'):
    index = filename.find(".csv")
    if "test" in filename:
        filename[:index]) = pd.read_csv(filename)

1 个答案:

答案 0 :(得分:5)

我认为您需要使用dictionary of DataFrame通过文件名创建keys

d = {}
for filename in glob.glob('*.csv'):
    if "test" in filename:
        d[filename[:-4]] = pd.read_csv(filename)

与...相同:

d = {f[:-4]: pd.read_csv(f) for f in glob.glob('*.csv') if "test" in f}

如果只想要文件名可以使用:

d = {os.path.basename(f).split('.')[0]:pd.read_csv(f) for f in glob.glob('*.csv') if "test" in f}