web-dev-qa-db-ja.com

pandas read_Excel同じシート上の複数のテーブル

pandas?次のようなものを使用してシートExcelファイルから複数のテーブルを読み取ることは可能ですか?行0から行100までテーブル1を読み取ります。行102から行202までテーブル2を読み取ります...

8
bsd

次のExcelファイルがあると仮定します。

enter image description here

解決策:最初のシートを解析しています(インデックス:0

xl = pd.ExcelFile(fn)
nrows = xl.book.sheet_by_index(0).nrows

df1 = xl.parse(0, skipfooter= nrows-(10+1)).dropna(axis=1, how='all')
df2 = xl.parse(0, skiprows=12).dropna(axis=1, how='all')

編集:skip_footerskipfooterに置き換えられました

結果:

In [123]: df1
Out[123]:
    a   b   c
0  78  68  33
1  62  26  30
2  99  35  13
3  73  97   4
4  85   7  53
5  80  20  95
6  40  52  96
7  36  23  76
8  96  73  37
9  39  35  24

In [124]: df2
Out[124]:
   c1  c2  c3 c4
0  78  88  59  a
1  82   4  64  a
2  35   9  78  b
3   0  11  23  b
4  61  53  29  b
5  51  36  72  c
6  59  36  45  c
7   7  64   8  c
8   1  83  46  d
9  30  47  84  d
8
MaxU

最初にcsvファイル全体を読み込みます。

import pandas as pd
df = pd.read_csv('path_to\\your_data.csv')

次に、たとえば次を使用して、個々のフレームを取得します。

df1 = df.iloc[:100,:]
df2 = df.iloc[100:200,:]
1
splinter