将多个csv文件导入pandas并拼接成一个DataFrame

2022-01-30 00:00:00 python pandas dataframe csv concatenation

问题描述

我想将目录中的几个 csv 文件读入 pandas 并将它们连接到一个大 DataFrame 中.我一直无法弄清楚.这是我目前所拥有的:

I would like to read several csv files from a directory into pandas and concatenate them into one big DataFrame. I have not been able to figure it out though. Here is what I have so far:

import glob
import pandas as pd

# get data file names
path =r'C:DRODCL_rawdata_files'
filenames = glob.glob(path + "/*.csv")

dfs = []
for filename in filenames:
    dfs.append(pd.read_csv(filename))

# Concatenate all data into one DataFrame
big_frame = pd.concat(dfs, ignore_index=True)

我想我在 for 循环中需要一些帮助???

I guess I need some help within the for loop???


解决方案

如果您在所有 csv 文件中都有相同的列,那么您可以尝试下面的代码.我添加了 header=0 以便在读取 csv 后第一行可以指定为列名.

If you have same columns in all your csv files then you can try the code below. I have added header=0 so that after reading csv first row can be assigned as the column names.

import pandas as pd
import glob

path = r'C:DRODCL_rawdata_files' # use your path
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)

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

相关文章