gpt4 book ai didi

python - 将多个excel文件导入python pandas并将它们连接到一个数据帧中

转载 作者:IT老高 更新时间:2023-10-28 21:15:26 26 4
gpt4 key购买 nike

我想将目录中的几个 excel 文件读入 pandas 并将它们连接到一个大数据框中。我一直无法弄清楚。我需要一些有关 for 循环和构建串联数据框的帮助:这是我到目前为止所拥有的:

import sys
import csv
import glob
import pandas as pd

# get data file names
path =r'C:\DRO\DCL_rawdata_files\excelfiles'
filenames = glob.glob(path + "/*.xlsx")

dfs = []

for df in dfs:
xl_file = pd.ExcelFile(filenames)
df=xl_file.parse('Sheet1')
dfs.concat(df, ignore_index=True)

最佳答案

正如评论中提到的,您犯的一个错误是您正在循环一个空列表。

以下是我的做法,以 5 个相同的 Excel 文件逐个附加的示例为例。

(1) 进口:

import os
import pandas as pd

(2) 列出文件:

path = os.getcwd()
files = os.listdir(path)
files

输出:

['.DS_Store',
'.ipynb_checkpoints',
'.localized',
'Screen Shot 2013-12-28 at 7.15.45 PM.png',
'test1 2.xls',
'test1 3.xls',
'test1 4.xls',
'test1 5.xls',
'test1.xls',
'Untitled0.ipynb',
'Werewolf Modelling',
'~$Random Numbers.xlsx']

(3) 挑选“xls”文件:

files_xls = [f for f in files if f[-3:] == 'xls']
files_xls

输出:

['test1 2.xls', 'test1 3.xls', 'test1 4.xls', 'test1 5.xls', 'test1.xls']

(4)初始化空数据框:

df = pd.DataFrame()

(5) 循环遍历要附加到空数据帧的文件列表:

for f in files_xls:
data = pd.read_excel(f, 'Sheet1')
df = df.append(data)

(6) 享受您的新数据框。 :-)

df

输出:

  Result  Sample
0 a 1
1 b 2
2 c 3
3 d 4
4 e 5
5 f 6
6 g 7
7 h 8
8 i 9
9 j 10
0 a 1
1 b 2
2 c 3
3 d 4
4 e 5
5 f 6
6 g 7
7 h 8
8 i 9
9 j 10
0 a 1
1 b 2
2 c 3
3 d 4
4 e 5
5 f 6
6 g 7
7 h 8
8 i 9
9 j 10
0 a 1
1 b 2
2 c 3
3 d 4
4 e 5
5 f 6
6 g 7
7 h 8
8 i 9
9 j 10
0 a 1
1 b 2
2 c 3
3 d 4
4 e 5
5 f 6
6 g 7
7 h 8
8 i 9
9 j 10

关于python - 将多个excel文件导入python pandas并将它们连接到一个数据帧中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20908018/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com