excel学习库

excel表格_excel函数公式大全_execl从入门到精通

pandas索引器loc和iloc

DataFrame是pandas两种数据类型之一(另一种是Series),日常使用最多的也是它。DataFrame是一张二维表,使用的时候要知道如何定位元素,loc和iloc是就是用来定位元素的。

loc索引器

loc索引器是一中基于元素的索引器,一般的形式是loc[*,*],第一个参数是行选择,第二个参数是列选择,如果不设置第二个参数,表示查询所有列。第一个参数可以接受4类合法对象,分别是单个元素、元素列表、元素切片以及布尔列表。先看一下示例数据:

df = pd.read_excel('calendar2022.xls',index_col='DAY')
print(df.head(5))

1.单个元素

索引单个元素,如果匹配一行,返回的是Serise,如果匹配多行,返回DataFrame:

print(df.loc[20221003])

2.元素列表

print(df.loc[[20221003,20221004]])

3.元素切片

print(df.loc[20221001:20221004])

4.布尔列表

比如查询春节是哪一天:print(df.loc[df['SPR']==1])

iloc素引擎

iloc索引器和loc索引器用法类似,只不过它是针对位置进行索引,第一个参数可以接受4类对象:整数、整数列表、整数切片和布尔列表。

1.整数

第二行数据:print(df.iloc[1])

2.整数列表

前三行三列:print(df.iloc[[0,1,2],[0,1,2]])

3.整数切片

依然是前三行散列:print(df.iloc[0:3,0:3]),结果和上图一致。

4.布尔列表

查询所有月份的最后一天:print(df.iloc[(df['EOM']==1).values]),这个写法有点另类,必须返回布尔列表的值,否则回报错,所以有类似需求时,建议使用loc索引器:print(df.loc[df['EOM']==1])

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接