pandas.DataFrame.iloc的使用

pandas.DataFrame.iloc的使用

今天学习时遇到了这个方法,为了加深理解做一下笔记。 这是该方法的文档,从中可以看出,中括号里允许输入可情形有5种。 此外,iloc方法既可以索引行数据,也可以列数据。

//首先创建DataFrame
import pandas as pd
import numpy as np
df = pd.DataFrame({城市:[北京,广州, 天津, 上海, 杭州, 成都, 澳门, 南京], 
 
                   平均收入:[10000, 10000, 5000, 5002, 40000, 50000, 8000, 5000],
 
                    人口:[500, 400, 300, 400, 250, 250, 405, 360]})

数据如下

第一种 整数做索引

// 索引第2行
df.iloc[1]
// 索引第2行第3列
df.iloc[1,2]

第二种 列表或数组做索引

// 索引2、3两行数据
df.iloc[[1,2]]
// 索引2、3两行数据的前两列
df.iloc[[1,2],[0,1]]

第三种 利用切片做索引

// 索引前5行数据的前两列
df.iloc[0:5,0:2]
// 和切片原理一样,2是步长
df.iloc[0:8:2]

第四种 Boolean数组做索引

// True 为显示,False为不显示
df.iloc[[True, False, True, False, True, False, True, False],[True, False, True]]

注意:此时Boolean数组的长度需对应df的行列数 此外还可以这样用

df.iloc[:,df.columns!=人口]

第五种 带一个参数的可调用函数做索引

// A code block
df.iloc[lambda x: x.index + 2 <  8 ]
经验分享 程序员 微信小程序 职场和发展