pandasread_excel同一张纸上的多个表格
是否有可能使用pandas读取表excel文件中的多个表? 如下所示:从row0读取table1,直到row100从row102读取table2,直到row202 …
假设我们有以下的Excel文件:
解决方法:我们parsing第一张纸(索引: 0
)
xl = pd.ExcelFile(fn) nrows = xl.book.sheet_by_index(0).nrows df1 = xl.parse(0, skip_footer = nrows-(10+1)).dropna(axis=1, how='all') df2 = xl.parse(0, skiprows=12).dropna(axis=1, how='all')
结果:
In [123]: df1 Out[123]: abc 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
首先阅读整个csv
文件:
import pandas as pd df = pd.read_csv('path_to\\your_data.csv')
然后获得各个帧,例如使用:
df1 = df.iloc[:100,:] df2 = df.iloc[100:200,:]