Навигация и добавление CSV из дочерних каталогов - PullRequest
0 голосов
/ 05 апреля 2019

Я нахожусь в каталоге, который содержит 36 разных папок.В каждой папке есть один CSV.Я хочу добавить каждый из них вместе, чтобы сделать большой фрейм данных в Python.

в R, я бы сделал это:

cwd = getwd() #get current directory
fil = list.files() #get list of all files/folders in the directory
Bigdf = NULL #initialize empty df
for(i in fil){ #read through all folders in current directory
    setwd(paste0(cwd,'/',i)) #navigate to i'th folder
    fil2 = list.files() #get list of files in i'th folder
    for(j in fil2){
        a = read.csv(paste0(cwd,'/',i,'/',j)) #read in all csv's 
        Bigdf = rbind(Bigdf,a[,c(2,4:11)]) #append desired columns to data frame
    }
    setwd(cwd) 
}

Как бы я поступил так впитон?

Я пытался реализовать Как я могу прочитать содержимое всех файлов в каталоге с пандами? и Как мне вывести список всех файлов каталога? ино безрезультатно.Я думаю, что упускаю что-то очевидное, и надеюсь, что кто-то может указать мне правильное направление.

1 Ответ

0 голосов
/ 05 апреля 2019
import glob
import pandas as pd

li =[]

for filename in glob.iglob('src/**/*.csv', recursive=True):
    df = pd.read_csv(filename, index_col=None, header=0)
    li.append(df)

frame = pd.concat(li, axis=0, ignore_index=True)

Комбинация

Импорт нескольких файлов CSV в панды и объединение в один DataFrame

и

Как использоватьglob () чтобы найти файлы рекурсивно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...