Pandas中的loc与iloc用法详解
1.基本简介
1.1 loc与iloc基本含义
loc函数:通过行索引 “Index” 中的具体值来取行数据(如取"Index"为"A"的行)
iloc函数:通过行号来取行数据(如取第二行的数据)
注:loc是location的意思,iloc中的i是integer的意思,仅接受整数作为参数。
1.2 loc与iloc的区别
官网解释DataFrame中的loc与iloc:
Purely integer-location based indexing for selection by position. --iloc
Access a group of rows and columns by label(s) or a boolean array. --loc
二者的区别(传入参数的不同):
loc works on labels in the index.
iloc works on the positions in the index (so it only takes integers).
2.使用方法
2.0 数据准备
# 导包
import numpy as np
import pandas as pd
#创建Dataframe
data=pd.DataFrame(np.arange(25).reshape(5,5),index=list('abcde'),columns=list('ABCDE'))
2.1 使用loc与iloc提取行数据
需求:获取索引为’a’的行数据
# loc的方式
data.loc['a']# 输出结果:
A 0
B 1
C 2
D 3
E 4
Name: a, dtype: int32# iloc的方式:索引为a即为第一行数据
data.iloc[0]
# 输出结果:
A 0
B 1
C 2
D 3
E 4
Name: a, dtype: int32
# iloc按照切片方式处理
data.iloc[:1]
2.2 使用loc与iloc提取列数据
需求:取’A’列所有行,多取几列格式为 data.loc[:,[‘A’,‘B’]],data.iloc[:,[0,1]]
data.loc[:,['A']]
# 'A'列的数据即为第0列的数据
data.iloc[:,[0]]
2.3 使用loc与iloc提取指定行、列的数据
需求: 提取index为’a’,‘b’,列名为’A’,'B’中的数据
# 提取index为'a','b',列名为'A','B'中的数据
data.loc[['a','b'],['A','B']]
# 提取第0、1行,第0、1列中的数据
data.iloc[[0,1],[0,1]]
2.4 使用loc与iloc提取所有数据
需求:提取所有数据
data.loc[:,:]
data.iloc[:,:]
2.5 使用loc根据某个条件来提取数据所在的行
需求1:提取A列中数值为0的所在行数据
data.loc[data['A']==0]
需求2:提取A列中数字为0,且B列中数值为1所在行的数据
data.loc[(data['A']==0) & (data['B']==1)]
# 其他实现方式:
data[data['A']==0] #dataframe用法
data[data['A'].isin([0])] #isin函数
data[(data['A']==0)&(data['B']==2)] #dataframe用法
data[(data['A'].isin([0]))&(data['B'].isin([2]))] #isin函数Out[15]: A B C D E
a 0 1 2 3 4
3. 总结
对于loc选取行列数据:
- 行根据行标签,也就是索引筛选,列根据列标签,列名筛选
- 如果选取的是所有行或者所有列,可以用:代替
- 行标签选取的时候,两端都包含,比如[0:5]指的是0,1,2,3,4,5
对于iloc选取行列数据:
- iloc基于位置索引,简言之,就是第几行第几列,只不过这里的行列都是从0开始的。
- iloc的0:X中不包括X,只能到X-1.
参考链接:
1.https://blog.csdn.net/W_weiying/article/details/81411257
2.https://zhuanlan.zhihu.com/p/129898162
Pandas中的loc与iloc用法详解相关推荐
- python iloc用法_pandas.DataFrame.loc和.iloc用法详解
.loc[ ]与.iloc[ ]用法详解 目录 pandas.DataFrame.loc pandas.DataFrame.iloc 注意 通过.loc[ ]或者.iloc[ ]获取数据时需要注 ...
- python时间函数报错_python3中datetime库,time库以及pandas中的时间函数区别与详解...
1介绍datetime库之前 我们先比较下time库和datetime库的区别 先说下time 在 Python 文档里,time是归类在Generic Operating System Servic ...
- python获取系统时间函数_python3中datetime库,time库以及pandas中的时间函数区别与详解...
1介绍datetime库之前 我们先比较下time库和datetime库的区别 先说下time 在 Python 文档里,time是归类在Generic Operating System Servic ...
- python scatter参数详解_Python中scatter函数参数及用法详解
最近开始学习Python编程,遇到scatter函数,感觉里面的参数不知道什么意思于是查资料,最后总结如下: 1.scatter函数原型 2.其中散点的形状参数marker如下: 3.其中颜色参数c如 ...
- python scatter参数详解_Python 中 scatter 函数参数及用法详解
Python 中 scatter 函数参数及用法详解 Python 中 scatter 函数参数及用法详解 这里有新鲜出炉的 Python 教程, 程序狗速度看过来! Python 编程语言 Pyth ...
- python的raw_ input是什么意思-对python中raw_input()和input()的用法详解
最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...
- python中str和input_对python中raw_input()和input()的用法详解
最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...
- js数组中foEach和map的用法详解 jq中的$.each和$.map
数组中foEach和map的用法详解 相同点: 1.都是循环遍历数组(仅仅是数组)中的每一项. 2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项value, ...
- 教程-Delphi中Spcomm使用属性及用法详解
Delphi中Spcomm使用属性及用法详解 Delphi是一种具有 功能强大.简便易用和代码执行速度快等优点的可视化快速应用开发工具,它在构架企业信息系统方面发挥着越来越重要的作用,许多程序员愿意选 ...
最新文章
- mysql外键约束脚本_如何在MySQL中设置外键约束
- 1.6 字符串的比较
- 11 ORA系列:ORA-01791: 不是 SELECTed 表达式(distinct使用注意点)
- 理解Go Interface
- Python私有化与poperty方法
- cpu消耗 pytorch_高效 PyTorch :如何消除训练瓶颈
- vs2010新功能(转)
- 大数据之-Hadoop3.x_MapReduce_shuffle机制---大数据之hadoop3.x工作笔记0110
- IP地址和子网划分学习笔记之《预备知识:进制计数》
- Setup Factory打包winform程序
- OA升级及二次开发方案
- 计算机管理格式化没有顺利完成,TF存储卡“格式化没有顺利完成”问题解决的方法...
- bestCoder 百度之星程序设计资格赛 1005下棋
- 图的割点(解释及实现)
- EOS智能合约开发系列(18): 狼人杀游戏的`eosio.code`
- 手机自动拨号软件_手机自动拨号是灵异事件?我信你个鬼
- ie浏览器打不开闪退_卸载并重装IE11后,IE浏览器闪退不能启动,win10 home 系统...
- Opportunities and Challenges in Code Search Tools 笔记
- 【强化学习论文合集】十三.2018机器人与自动化国际会议论文(ICRA2018)
- win10 系统 U盘无法删除卷