Pandas - iloc[]函数

发布时间 2023-09-11 10:08:02作者: 徐俊112

 

1.iloc[]函数作用:

iloc[]函数,属于pandas库,全称为index location,即对数据进行位置索引,从而在数据表中提取出相应的数据。

开始准备:

import pandas as pd

df = pd.read_excel(r'D:\PyCharm\数据处理pandas\数据统计.xlsx')

 

2.iloc[]函数使用方法:

取单个值

  2.1 df.iloc[a,b]  取[a行,b列] 数据

print(df.iloc[2,2])  # 取[第三行,第三列] 索引从0开始
# 淮安淮阴翔宇北道

 

取多个值:取多个值的话,取值区间(取左不取右)

  2.2 df.iloc[a:b,c]  取从a行到b-1行的 第c 列的所有数据

print(df.iloc[2:6, 0])  # 取从第3行到第6行,第1列的所有数据
# 2    867726032670079
# 3    860362057284351
# 4    866384064978126
# 5    860765048061011
# Name: ID, dtype: int64 -> Name: ID 表示所取列的名字 

  

  2.3  df.iloc[a:b,:]   取a行到b-1行,所有列的数据

print(df.iloc[2:6, :])

#                 ID  数据      安装企业             安装路段                    8.27天气
# 2  867726032670079  86  淮安淮阴翔宇北道  江苏省淮安市淮阴区翔宇北道涵洞  26号:夜间中雨 27号: 暴雨转大雨 风力4级
# 3  860362057284351  46       NaN              NaN                       NaN
# 4  866384064978126  31       NaN              NaN                       NaN
# 5  860765048061011  52       NaN              NaN                       NaN

  2.4 df.iloc[:,a:b]  取 a列到b-1列 ,所有数据

print(df.iloc[:, 0:2])  # 取第一列到第二列所有的数据

  ID        数据
0 867726032731384 98
1 860765047992612 84
2 860765048127473 55
3 866384061867447 111
4 867266068077279 51
5 867266068071157 153
6 866384064988133 234
7 867266067786532 114

  2.5 df.iloc[a:b, c:d]  #  取a行 到b-1行,c列到d-1列,这个区域的数值

print(df.iloc[0:2, 0:2])

#                 ID  数据
# 0  867726032731384  98
# 1  860765047992612  84

 

  2.6  df.iloc[[1, 3, 5], [0, 2, 4]]  # 根据自己需求选取固定行,固定列的数据 。无需非要连续

print(df.iloc[[1, 3, 5], [0, 2, 4]])
#                 ID              安装企业                               8.27天气
# 1  860765047992612    淮安区康马路和山阳大道交界处  26 号:小雨  27 号: 大雨  降雨量: 296.3  风力4级
# 3  866384061867447  宿迁市泗阳县建凌中路金康华府门口            26号:阴转中雨 27号:大暴雨转暴雨  风力4级
# 5  867266068071157             开封市杞县           26号:中雨转暴雨 27号: 暴雨转阴   风力5级