从子目录导航和追加 csv



我在一个包含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) 
}

我将如何在python中做这样的事情?

我尝试实现如何使用 pandas 读取目录中所有文件的内容?以及如何列出目录的所有文件?但无济于事。我想我错过了一些明显的东西,希望有人能为我指出正确的方向。

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 文件导入熊猫并连接到一个数据帧

如何使用 glob(( 递归查找文件?

最新更新