python使用pandas中获取Excel表中的数据(二)

上一篇文章中,我重点讲述了使用df.loc[]方法获取excel表格中的数据。本文中,我将继续这个话题,如何使用iloc[]方法获取数据。iloc是根据position获取的,pandas读取excel后会像数学坐标轴一样,将每个单元格进行标记。左端最上角的单元格定义为原点(0,0),从上往下依次是(1,0),(2,0)…;从左往右依次是(0,1),(0,2),(0,3)…。这样每一个单元格就可以被唯一的一个坐标所确定。
通过调用help(df.iloc[])可以得知,该方法支持以下输入:

Purely integer-location based indexing for selection by position.
 |  
 |  ``.iloc[]`` is primarily integer position based (from ``0`` to
 |  ``length-1`` of the axis), but may also be used with a boolean
 |  array.
 |  
 |  Allowed inputs are:
	- An integer, e.g. ``5``.
 |  - A list or array of integers, e.g. ``[4, 3, 0]``. # 列表
 |  - A slice object with ints, e.g. ``1:7``. # 切片
 |  - A boolean array. # 判断型boolean
 |  - A ``callable`` function with one argument  # 仅有一个参数的函数

下面我将重点对前三个举例讲解(其余的会安排出单独的章节):

>>> import pandas as pd
>>> df = pd.read_excel(r'D:\myExcel\1.xlsx', 'Sheet1')
>>> df
     name  math  science
0     bob    23       12
1  millor    32       32
2   jiken    61       89
3     tom    34       94
4    json    83       12
5    dela    96       67
6   rison    90       34
# 查询单行。列表第一个参数表示行,第二个表示列
>>> df.iloc[0]
name       bob
math        23
science     12
Name: 0, dtype: object
# 查询单列,行用切片表示,:前后无值表示所有行
>>> df.iloc[:,0]
0       bob
1    millor
2     jiken
3       tom
4      json
5      dela
6     rison
Name: name, dtype: object
# 使用列表查询指定的某些完整行,
>>> df.iloc[[1,3,5]]
     name  math  science
1  millor    32       32
3     tom    34       94
5    dela    96       67
# 使用切片查询第1,2行第0列的数据
>>> df.iloc[1:3, [0]]
     name
1  millor
2   jiken

以上就是iloc[]的基本用法,接受单个数值,数值列表以及切片。哈哈,如果您对pandas有兴趣,欢迎关注我的公众号:python小工具。还有福利呢
python使用pandas中获取Excel表中的数据(二)_第1张图片

你可能感兴趣的:(python使用pandas中获取Excel表中的数据(二))