簡體   English   中英

將Pandas .read_excel數據框追加到新數據框

[英]Appending a Pandas .read_excel dataframe to a new dataframe

我正在嘗試將多個XLS文件讀取到熊貓的數據框中。 它們似乎讀入正確-但是當我嘗試顯示(df),df.info()或df.head()時,數據框為空。

所有數據都在名為data1子文件夾中。 xls工作表分別命名為a.xlsb.xls

數據集如下:

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多個Excel工作簿的data append到單個數據框( df )中。

您永遠不會重新分配變量df ,然后您的數據框為空。 你應該做:

df = df.append(data)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM