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(), ...
随机推荐
- 【VBA】excel自动换名字打印
源码: Sub m() For i = 1 To 100 ActiveSheet.PrintOut copies:=1 Cells(1, 1) = Sheets(2).Cells(i, 1) Next ...
- 【Java】Debug断点调试常用技巧
Debug操作技巧 Show Execution Point 将光标回到当前断点停顿的地方 Step Over 执行当前行代码,并将运行进度跳转到下一行. Step Into 进入到当前代码行的方法内 ...
- 【题解】Luogu p2016 战略游戏 (最小点覆盖)
题目描述 Bob喜欢玩电脑游戏,特别是战略游戏.但是他经常无法找到快速玩过游戏的办法.现在他有个问题. 他要建立一个古城堡,城堡中的路形成一棵树.他要在这棵树的结点上放置最少数目的士兵,使得这些士兵能 ...
- VBS脚本编程(10)——编写WMI脚本
WMI介绍 1.WMI是什么? WMI--Windows管理规范(Windows Management instrumentation). 是一项核心的Windows管理技术. 采用统一的.基于开放标 ...
- Go语言获取Ubuntu所有网卡名
Go语言获取Ubuntu所有网卡名 需求 获取当前机器下所有网卡名,以字符串数组的形式返回 实现demo package main import ( "fmt" "os/ ...
- Golang获取CPU、内存、硬盘使用率
Golang获取CPU.内存.硬盘使用率 工具包 go get github.com/shirou/gopsutil 实现 func GetCpuPercent() float64 { percent ...
- 七、JavaSE语言基础之方法
关于方法的几个简单概念 关于方法的学习,先来明确几个简单的概念: 方法的作用:处理数据(把原始数据通过指定的算法处理后得到结果数据) 方法:在类中定义的具有特定功能的代码块 方法的意义(作用):提高代 ...
- 《机器学习Python实现_10_10_集成学习_xgboost_原理介绍及回归树的简单实现》
一.简介 xgboost在集成学习中占有重要的一席之位,通常在各大竞赛中作为杀器使用,同时它在工业落地上也很方便,目前针对大数据领域也有各种分布式实现版本,比如xgboost4j-spark,xgbo ...
- Redis之Sentinel
Redis的主从复制模式下,一旦主节点由于故障不能提供服务,需要人工将从节点晋升为主节点,同时还要通知应用方更新主节点地址,对于很多应用场景这种故障处理的方式是无法接受的.可喜的是Redis从 2.8 ...
- 温故知新,使用ASP.NET Core创建Web API,永远第一次
ASP.NET Core简介 ASP.NET Core是一个跨平台的高性能开源框架,用于生成启用云且连接Internet的新式应用. 使用ASP.NET Core,您可以: 生成Web应用和服务.物联 ...