pandas: импортировать несколько CSV из подпапок, если имя содержит указанный c текст - PullRequest
0 голосов
/ 17 апреля 2020

У меня есть папка, расположенная в C:\Users\Documents\folder, и внутри этой папки есть 500 произвольно названных подпапок. Каждая подпапка имеет несколько файлов CSV. Я хочу импортировать файлы CSV, если только их имена содержат слово client из этих подпапок и объединить импортированные данные в один фрейм данных (будем надеяться, что у меня не будет проблем с оперативной памятью).

Может кто-нибудь помочь? Большое спасибо.

1 Ответ

2 голосов
/ 17 апреля 2020

Я думаю, что это должно сделать это:

import os
import pandas as pd

source_dir = r'C:\Users\Documents\folder'

my_list = []

for root, dirnames, filenames in os.walk(source_dir):
    for f in filenames:

        if 'client' in f:

            my_list.append(pd.read_csv(os.path.join(root, f)))

concatted_df = pd.concat(my_list)
...