iloc与loc总结
pandas中操作DataFrame时候,经常用到**loc,iloc,at,iat,ix**
loc函数通过行索引“index"中具体的值来去行的数据(如取”index“为'A'的行)
iloc函数:通过行数来去行的数据(如取第二行的数据)
import numpy as np
import pandas as pd
#创建一个Dataframe
data=pd.DataFrame(np。arange(16).reshape(4,4),index=list('abcd'),columns=list('ABCD'))
In [16]: data
Out[16]:
A B C D
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
1.1 利用loc与iloc取行数据
data.loc['a']#取索引为a的行
In [17]: data.loc['a']
Out[17]:
A 0
B 1
C 2
D 3
Name: a, dtype: int64
data.iloc[0]#取第一行数据,索引为'a'的行就是第一行,所以结果相同
In [18]: data.iloc[0]
Out[18]:
A 0
B 1
C 2
D 3
Name: a, dtype: int64
pandas中操作DataFrame时候,经常用到loc,iloc,at,iat,ix
loc函数通过行索引“index"中具体的值来去行的数据(如取”index“为'A'的行)
iloc函数:通过行数来去行的数据(如取第二行的数据)
import numpy as np
import pandas as pd
#创建一个Dataframe
data=pd.DataFrame(np。arange(16).reshape(4,4),index=list('abcd'),columns=list('ABCD'))
In [16]: data
Out[16]:
A B C D
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
1.1 利用loc与iloc取行数据
data.loc['a']#取索引为a的行
In [17]: data.loc['a']
Out[17]:
A 0
B 1
C 2
D 3
Name: a, dtype: int64
data.iloc[0]#取第一行数据,索引为'a'的行就是第一行,所以结果相同
In [18]: data.iloc[0]
Out[18]:
A 0
B 1
C 2
D 3
Name: a, dtype: int64
1.2 利用loc,iloc取列数据
data.loc[:,['A']] #取A列所有行,取多列的格式为data.loc[:,['A',‘B’,‘C’,...]]
In [19]: data.loc[:,['A']]
Out[19]:
A
a 0
b 4
c 8
d 12
Data.iloc(:,[0])#取第0列的所有行,索取几列的格式为data.iloc[:,[0,1,2..]]
In [20]: data.iloc[:,[0]]
Out[20]:
A
a 0
b 4
c 8
d 12
1.3 利用loc,iloc提取指定行、指定列数据
In [22]: data.loc[['a','b'],['A','B']]#提取index为‘a’,‘b’,列名为‘A’,‘B’的数据
Out[22]:
A B
a 0 1
b 4 5
In [23]: data.iloc[[0,1],[0,1]]#提取0,1行,第0,1列中的数据
Out[23]:
A B
a 0 1
b 4 5
1.4 利用loc,iloc提取所有数据
In [25]: data.loc[:,:]#提取A,B,C,D列的所有行
Out[25]:
A B C D
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
In [26]: data.iloc[:,:]#提取0,1,2,3列的所有行
Out[26]:
A B C D
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
1.5 利用loc函数,根据某个数据来提取数据所在的行
In [28]: data.loc[data['A']==0]#提取data数据(筛选条件:A列中数字为0所在的行数据)
Out[28]:
A B C D
a 0 1 2 3
In [32]: data.loc[(data['A']==0)&(data['B']==1)]#提取data数据(多个筛选条件)
Out[32]:
A B C D
a 0 1 2 3
利用loc函数的时候,当index相同时,会将index全部提取出来,优点:如果index是人名,数据框为所有人的数据,那么我可以将某人的多条数据提取分析;缺点:如果index不具有特定意义,而且重复,那么提取数据需要进一步处理,可以用.reset_index()函数重置index.
iloc与loc总结的更多相关文章
- pandas DataFrame 索引(iloc 与 loc 的区别)
Pandas--ix vs loc vs iloc区别 0. DataFrame DataFrame 的构造主要依赖如下三个参数: data:表格数据: index:行索引: columns:列名: ...
- pandas-03 DataFrame()中的iloc和loc用法
pandas-03 DataFrame()中的iloc和loc用法 简单的说: iloc,即index locate 用index索引进行定位,所以参数是整型,如:df.iloc[10:20, 3:5 ...
- DataFrame的iloc与loc的区别是什么?
对于一个DataFrame A,A.loc[k]是读取A中index为k的那一行.A.iloc[k]是读取A中的第k行.
- iloc与loc的区别
pandas.DataFrame.iloc iloc基于位置进行索引,主要是整数位置,也可以用布尔数组 iloc的输入可以是:单个整数.整数列表或数组.整数切片.布尔数组 pandas.DataFr ...
- pandas中Dataframe的查询方法([], loc, iloc, at, iat, ix)
数据介绍 先随机生成一组数据: import pandas as pd import numpy as np state = ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'N ...
- 关于python中loc和iloc方法
pandas以类似字典的方式来获取某一列的值 import pandas as pd import numpy as np table = pd.DataFrame(np.zeros((4,2)), ...
- pandas入门——loc与iloc函数
oc与iloc函数 loc函数 import pandas as pd import numpy # 导入数据 df = pd.read_csv(filepath_or_buffer="D: ...
- pandas DataFrame的查询方法(loc,iloc,at,iat,ix的用法和区别)
pandas DataFrame的增删查改总结系列文章: pandas DaFrame的创建方法 pandas DataFrame的查询方法 pandas DataFrame行或列的删除方法 pand ...
- loc() iloc() at() iat()函数
1 四个函数都是用于dataframe的定位 []用于直接定位. loc()函数是用真实索引,iloc()函数是用索引序号. loc()函数切片是左闭右闭,iloc()函数切片是左闭右开. at(), ...
随机推荐
- 【NX二次开发】Block UI 切换开关
属性说明 常规 类型 描述 BlockID String 控件ID Enable Logical 是否可操作 Group Logical ...
- 【NX二次开发】Block UI 超级点
属性说明 属性 类型 描述 常规 BlockID String 控件ID Enable Logical 是否可操作 Group ...
- Activity侧滑返回的实现原理
简介 使用侧滑Activity返回很常见,例如微信就用到了.那么它是怎么实现的呢.本文带你剖析一下实现原理.我在github上找了一个star有2.6k的开源,我们分析他是怎么实现的 //star 2 ...
- 其实 Linux IO 模型没那么难
文章首发于公众号「陈树义」及个人博客 shuyi.tech,欢迎关注访问. 博主个人独立站点开通啦!欢迎点击访问:https://shuyi.tech IO 其实就是 Input 和 Output,在 ...
- 『心善渊』Selenium3.0基础 — 15、Selenium对多窗口的操作
目录 1.多标签/多窗口之间的切换 2.句柄练习 1.多标签/多窗口之间的切换 (1)多标签/多窗口场景: 在页面操作过程中有时候点击某个链接会弹出新的窗口,这时就需要切换到新打开的窗口上进行操作,如 ...
- 限流神器Sentinel,不了解一下吗?
概述 书接上回:你来说说什么是限流? ,限流的整体概述中,描述了 限流是什么,限流方式和限流的实现.在文章尾部的 分布式限流,没有做过多的介绍,选择了放到这篇文章中.给大伙细细讲解一下 Sentine ...
- 14、oracle sql语法
14.0.注释: 1.单行注释:-- 2.多行注释:/* */ 14.1.sqlplus中的set指令: 1.设置每行显示的数据长度: SET LINESIZE 500; #有效范围是1-32767, ...
- imply套件以及plyql的安装
本文出自:http://www.cnblogs.com/gaojiang/p/7212149.html 1.安装nodejs,版本需要在4.0以上,安装方法见上篇博客 2.下载imply,地址:htt ...
- springboot集成swagger添加消息头(header请求头信息)
springboot集成swagger上篇文章介绍: https://blog.csdn.net/qiaorui_/article/details/80435488 添加头信息: package co ...
- 白话边缘计算解决方案 SuperEdge
一.SuperEdge的定义 引用下SuperEdge开源官网的定义: SuperEdge is an open source container management system for edge ...