Python 如何读取多个csv文件并将其存储在不同的数据帧中?

Python 如何读取多个csv文件并将其存储在不同的数据帧中?,python,pandas,Python,Pandas,假设我有200个csv文件,我想一次读取这些csv文件,并将每个csv文件存储在不同的数据帧中,比如第一个文件的df1,等等,直到df200。执行类似于df1=pd.read\u csv的手动操作需要大量时间,最多需要200分钟。我如何使用熊猫来实现这一点 我已尝试使用for loop,但无法接近,卡住。尝试使用以下方法: import pandas as pd import glob path = r'path of the folder where all csv exists' all

假设我有200个csv文件,我想一次读取这些csv文件,并将每个csv文件存储在不同的数据帧中,比如第一个文件的df1,等等,直到df200。执行类似于
df1=pd.read\u csv
的手动操作需要大量时间,最多需要200分钟。我如何使用熊猫来实现这一点

我已尝试使用for loop,但无法接近,卡住。

尝试使用以下方法:

import pandas as pd
import glob

path = r'path of the folder where all csv exists' 
all_files = glob.glob(path + "/*.csv")

li = []

for filename in all_files:
    df = pd.read_csv(filename, index_col=None, header=0)
    li.append(df)
李将拥有所有csv的。。。您可以进一步对它们进行预处理,将它们分离到不同的文件中

或者,如果所有csv具有相同的列,并且您希望将它们连接到单个数据帧,则可以使用pandas over li中的
concat
函数返回单个数据帧

尝试使用以下方法:

import pandas as pd
import glob

path = r'path of the folder where all csv exists' 
all_files = glob.glob(path + "/*.csv")

li = []

for filename in all_files:
    df = pd.read_csv(filename, index_col=None, header=0)
    li.append(df)
import pandas as pd
import os

dfs=[] #empty list of dataframes

dirname = #where your files are

for root,folders,files in os.walk(dirname):
    for file in files:
        fp = os.path.join(root,file)
        df=pd.read_csv(fp)
        dfs.append(df)

df=pd.concat(dfs) 
李将拥有所有csv的。。。您可以进一步对它们进行预处理,将它们分离到不同的文件中

或者,如果所有csv具有相同的列,并且您希望将它们连接到单个数据帧,则可以使用pandas over li中的
concat
函数返回单个数据帧

将熊猫作为pd导入
import pandas as pd
import os

dfs=[] #empty list of dataframes

dirname = #where your files are

for root,folders,files in os.walk(dirname):
    for file in files:
        fp = os.path.join(root,file)
        df=pd.read_csv(fp)
        dfs.append(df)

df=pd.concat(dfs) 
导入glob 所有文件=glob.glob(“文件路径”+“/*.csv”) dfs_dict={} 对于idx,枚举中的文件名(所有_文件): df=pd.read\u csv(文件名,索引列=None,头=0) dfs_dict[“df”+str(idx)]=df
将熊猫作为pd导入
导入glob
所有文件=glob.glob(“文件路径”+“/*.csv”)
dfs_dict={}
对于idx,枚举中的文件名(所有_文件):
df=pd.read\u csv(文件名,索引列=None,头=0)
dfs_dict[“df”+str(idx)]=df

使用dict键1至200将每个数据帧保存到字典此答案向您展示。使用dict键1至200将每个数据帧保存到字典此答案向您展示。创建DFs临时列表不是最好的方法。您可以将生成器表达式传递给concat,或者创建一个独立的生成器(如果它对于单个表达式来说太复杂)。大致如下:
df=pd.concat((文件中f的pd.read\u csv(f))
创建DFs临时列表不是最好的主意。您可以将生成器表达式传递给concat,或者创建一个独立的生成器(如果它对于单个表达式来说太复杂)。大致如下:
df=pd.concat((文件中f的pd.read\u csv(f))