![](/img/trans.png)
[英]How to multiprocess multiple excel sheets using pandas read_excel?
[英]Pandas read_excel, 1 row header in first sheet but not other sheets
第一張工作表的第1行有一個標題,其他表格沒有。 有一種簡單的方法可以解決這個問題嗎?
我敢肯定,我可以通過一種繞行方式解決此問題(在一個read_excel中上載第一張表,然后在單獨的read_excel中獲得其余的表)。
假設有1本工作簿和2張紙:
all_sheets = pd.read_excel('test.xls', sheetname=None, header=0 )
In [149]: sheet1 = all_sheets["Sheet1"]
Out[149]: sheet1
This great excel workbook was created on :2016-04-01
0 Column_name1 Column_name2 Column_name3
1 Gary 23 Paid
2 John 26 Paid
In [149]: sheet2 = all_sheets["Sheet2"]
Out[149]: sheet2
Column_name1 Column_name2 Column_name3
0 Patrick 35 Paid
1 Josh 23 Paid
2 Justin 26 Paid
假設您要使用第一張工作表中的標題並將所有工作表中的數據合並到一個數據框中:
import collections
import pandas as pd
fn = r'test.xls'
first_sheet_name = 'Sheet1'
df_dict = pd.read_excel(fn, sheetname=None, header=None)
# sort
df_dict = collections.OrderedDict(sorted(df_dict.items()))
df = pd.concat(df_dict.values())
df.columns = df.iloc[0]
df = df.ix[df.index > 0]
您可能必須分別加載工作表並使用skiprows
跳過第一張工作表中的第一行。 不確定是否可以一次性處理紙張。
sheet1 = pd.read_excel('test.xls', sheetname="Sheet1", header=0, skiprows=[0] )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.