我正在尝试将几个XLS文件读入Panda的数据帧。它们似乎正确读取 - 但是当我尝试并显示(df),df.info()或df.head()时,数据帧为空。
所有数据都在名为data1
的子文件夹中。 xls工作表名为a.xls
和b.xls
。
数据集如下:
a.xls
Account Description Final Adjustment Adj Final
324 Testing1 2342 0 2342
232 Essential 5678 0 5678
35 Options 2345 0 2345
634 Working 45 5675 5720
23 Time 45774 0 45774
52 Styling 67 0 67
b.xls
Account Description Final Adjustment Adj Final
343 Visual 345 0 345
576 IO Tools 34543 0 34543
6567 Options 6356 0 6356
8675 Pickling 7456 5675 13131
345 Clipboard 5678 0 5678
6365 Flat 2355 645 3000
代码:
import pandas as pd
import os
from IPython.display import display, HTML
df = pd.DataFrame()
for filename in os.listdir('data1'):
if filename.endswith(".xls"):
print(f'appending {filename}')
data = pd.read_excel(os.path.join("data1", filename), sheet_name=0)
display(data)
df.append(data)
display(df)
else:
print(f'skipping {filename}, wrong data type')
输出:
appending a.xls
Account Description Final Adjustment Adj Final
0 324 Testing1 2342 0 2342
1 232 Essential 5678 0 5678
2 35 Options 2345 0 2345
3 634 Working 45 5675 5720
4 23 Time 45774 0 45774
5 52 Styling 67 0 67
___
appending b.xls
Account Description Final Adjustment Adj Final
0 343 Visual 345 0 345
1 576 IO Tools 34543 0 34543
2 6567 Options 6356 0 6356
3 8675 Pickling 7456 5675 13131
4 345 Clipboard 5678 0 5678
5 6365 Flat 2355 645 3000
___
display(data)
生成上表,但display(df)
生成___
。所以,不知怎的,我正在将excel文件读入data
,但它没有将其附加到df
。
df.info()
产生:
<class 'pandas.core.frame.DataFrame'>
Index: 0 entries
Empty DataFrame
我的问题是如何append
data
为多个Excel工作簿的单个数据框(df
)。
答案 0 :(得分:0)
您永远不会重新分配变量df
,那么您的数据框就是空的。你应该这样做:
df = df.append(data)