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选取行列数据:

  1. 行根据行标签,也就是索引筛选,列根据列标签,列名筛选
  2. 如果选取的是所有行或者所有列,可以用:代替
  3. 行标签选取的时候,两端都包含,比如[0:5]指的是0,1,2,3,4,5

对于iloc选取行列数据:

  1. iloc基于位置索引,简言之,就是第几行第几列,只不过这里的行列都是从0开始的。
  2. 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用法详解相关推荐

  1. python iloc用法_pandas.DataFrame.loc和.iloc用法详解

    .loc[ ]与.iloc[ ]用法详解 目录 pandas.DataFrame.loc    pandas.DataFrame.iloc 注意 通过.loc[ ]或者.iloc[ ]获取数据时需要注 ...

  2. python时间函数报错_python3中datetime库,time库以及pandas中的时间函数区别与详解...

    1介绍datetime库之前 我们先比较下time库和datetime库的区别 先说下time 在 Python 文档里,time是归类在Generic Operating System Servic ...

  3. python获取系统时间函数_python3中datetime库,time库以及pandas中的时间函数区别与详解...

    1介绍datetime库之前 我们先比较下time库和datetime库的区别 先说下time 在 Python 文档里,time是归类在Generic Operating System Servic ...

  4. python scatter参数详解_Python中scatter函数参数及用法详解

    最近开始学习Python编程,遇到scatter函数,感觉里面的参数不知道什么意思于是查资料,最后总结如下: 1.scatter函数原型 2.其中散点的形状参数marker如下: 3.其中颜色参数c如 ...

  5. python scatter参数详解_Python 中 scatter 函数参数及用法详解

    Python 中 scatter 函数参数及用法详解 Python 中 scatter 函数参数及用法详解 这里有新鲜出炉的 Python 教程, 程序狗速度看过来! Python 编程语言 Pyth ...

  6. python的raw_ input是什么意思-对python中raw_input()和input()的用法详解

    最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...

  7. python中str和input_对python中raw_input()和input()的用法详解

    最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...

  8. js数组中foEach和map的用法详解 jq中的$.each和$.map

    数组中foEach和map的用法详解 相同点: 1.都是循环遍历数组(仅仅是数组)中的每一项. 2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项value, ...

  9. 教程-Delphi中Spcomm使用属性及用法详解

    Delphi中Spcomm使用属性及用法详解 Delphi是一种具有 功能强大.简便易用和代码执行速度快等优点的可视化快速应用开发工具,它在构架企业信息系统方面发挥着越来越重要的作用,许多程序员愿意选 ...

最新文章

  1. mysql外键约束脚本_如何在MySQL中设置外键约束
  2. 1.6 字符串的比较
  3. 11 ORA系列:ORA-01791: 不是 SELECTed 表达式(distinct使用注意点)
  4. 理解Go Interface
  5. Python私有化与poperty方法
  6. cpu消耗 pytorch_高效 PyTorch :如何消除训练瓶颈
  7. vs2010新功能(转)
  8. 大数据之-Hadoop3.x_MapReduce_shuffle机制---大数据之hadoop3.x工作笔记0110
  9. IP地址和子网划分学习笔记之《预备知识:进制计数》
  10. Setup Factory打包winform程序
  11. OA升级及二次开发方案
  12. 计算机管理格式化没有顺利完成,TF存储卡“格式化没有顺利完成”问题解决的方法...
  13. bestCoder 百度之星程序设计资格赛 1005下棋
  14. 图的割点(解释及实现)
  15. EOS智能合约开发系列(18): 狼人杀游戏的`eosio.code`
  16. 手机自动拨号软件_手机自动拨号是灵异事件?我信你个鬼
  17. ie浏览器打不开闪退_卸载并重装IE11后,IE浏览器闪退不能启动,win10 home 系统...
  18. Opportunities and Challenges in Code Search Tools 笔记
  19. 【强化学习论文合集】十三.2018机器人与自动化国际会议论文(ICRA2018)
  20. win10 系统 U盘无法删除卷

热门文章

  1. 黑马旅游网-注册用户(二)
  2. Laravel 大数据量分块处理
  3. IO流(Java面试题)
  4. java -双列表LinkedHashMap
  5. 嵌入式Android底层开发
  6. python将时间戳转化为时间格式_python时间戳转换日期格式的方法是什么
  7. spring boot 集成springfox,使用swagger对 API 接口进行测试管理的 demo 示例
  8. 服务器2012系统关机,远程服务器2012关机
  9. 测试人员如何突破自我的瓶颈?
  10. Nginx日志分析系统——Elastic Stack的系列产品的使用