Pandas的loc,iloc与ix的用法及区别
1.先来谈一谈loc,loc这个方法就是你有啥我就用啥,你没有的我不用,pandas对象的index,columns有什么,pd.loc[index,column],index就是pd.index的其中的一个值或者是其中几个值组成的序列,或就是pd.index,column是pd.columns中的一个值或者其中几个值,或者就是pd.columns
来来上代码
1 >>>data
2 UserID MovieID Rating
3 1 2 257 2
4 0 3 251 2
5 3 2 32 4
6 2 4 256 1
7 4 3 258 2
8 >>>data.loc[0]
9 UserID 3
10 MovieID 251
11 Rating 2
12 Name: 0, dtype: int64
13 >>>
14 >>>data
15 UserID MovieID Rating
16 a 2 257 2
17 b 3 251 2
18 c 2 32 4
19 d 4 256 1
20 e 3 258 2
21 >>>data.loc[0] #对不起 你过不去,因为你没有0这个索引值
22 >>>data.loc['a'] #正确方式
23 UserID 2
24 MovieID 257
25 Rating 2
26 Name: a, dtype: int64
27 ######columns与index的情况类似这里不在赘述
Viewe
2.接下来我们再来谈一谈iloc这个方法,iloc正好与loc相反,iloc这个方法无论你pd对象有什么,我不稀罕,我只用我自己的这一套,pd.iloc[n1,n2],其中n1或者n2必须是数字,或者数字组成的序列(无论行或者列皆如此),但是这个数字必须在pd对象的行数或者列数的范围之内(不包括列数或者行数的最大值,因为从零开始)
废话不多说,直接上代码
>>>data
UserID MovieID Rating
1 2 257 2
0 3 251 2
3 2 32 4
2 4 256 1
4 3 258 2
>>>data.iloc[0]
UserID 2
MovieID 257
Rating 2
Name: 1, dtype: int64
#注意到索引为0的位置是第二行行,而结果却显示的是第一行,这就是iloc不听话的地方 >>>data
UserID MovieID Rating
a 2 257 2
b 3 251 2
c 2 32 4
d 4 256 1
e 3 258 2
>>>data.iloc['a'] #对不起,我不吃你这一套
>>>data.iloc[0]
UserID 2
MovieID 257
Rating 2
Name: 1, dtype: int64
#显然无论你的index或者columns的值是什么,都不影响我的iloc自己取值的规则
3.最后再来说一说ix,ix这个就是个和事老,当你有数字索引值时,用数字索引就与loc一样(其中一个为数字,index或者columns就都为数字,若其中有字符串他会将数字进行转换),当index或者columns是字符串是你用字符串进行索引时与loc一样,用数字进行索引时与iloc一样,这里需要注意的就是当索引为数字时的情况(ix只有在字符索引的情况下用数字索引才会与iloc保持一致,否则一直支持loc)由于情况与上面类似不代码不再写了(lazy)
有什么问题还望能够及时指出,小白在这不胜感激
Pandas的loc,iloc与ix的用法及区别的更多相关文章
- Pandas:loc iloc ix用法
参考:Pandas中关于 loc \ iloc \ ix 用法的理解 相同点 使用形式都是 df.xxx[ para1 , para2 ] #xxx表示loc iloc ix#df表示一个DataFr ...
- Pandas的 loc iloc ix 区别
先看代码: In [46]: import pandas as pd In [47]: data = [[1,2,3],[4,5,6]] In [48]: index = [0,1] In [49]: ...
- python pandas 中 loc & iloc 用法区别
转自:https://blog.csdn.net/qq_21840201/article/details/80725433 ### 随机生DataFrame 类型数据import pandas as ...
- pandas 定位 loc,iloc,ix
In [114]: df Out[114]: A B C D 2018-06-30 0.318501 0.613145 0.485612 0.918663 2018-07-31 0.614796 0. ...
- pandas的loc, iloc, ix的操作
参考: https://blog.csdn.net/xw_classmate/article/details/51333646 1. loc——通过行标签索引行数据 2. iloc——通过行号获取行数 ...
- Pandas之loc\iloc\ix
---------------------------------------------------------------------------------------------------- ...
- python数据分析之pandas数据选取:df[] df.loc[] df.iloc[] df.ix[] df.at[] df.iat[]
1 引言 Pandas是作为Python数据分析著名的工具包,提供了多种数据选取的方法,方便实用.本文主要介绍Pandas的几种数据选取的方法. Pandas中,数据主要保存为Dataframe和Se ...
- pandas (loc、iloc、ix)的区别
loc:通过行标签索引数据 iloc:通过行号索引行数据 ix:通过行标签或行号索引数据(基于loc和iloc的混合) 使用loc.iloc.ix索引第一行数据: loc: iloc: ix:
- loc、iloc、ix比较
使用pandas创建一个对象 In [1]: import pandas as pd In [2]: import numpy as np In [3]: df = pd.DataFrame(np.r ...
随机推荐
- oracle 19c 导入 12c ORA-39002 ORA-39358
直接用19c导出的dmp文件导入到12c,报错: ORA-39002: invalid operation ORA-39358: Export dump file version 19.0.0.0.0 ...
- ALGO基础(一)—— 排序
ALGO基础(一)-- 排序 冒选插希快归堆,以下均为从小到大排 1 冒泡排序 描述: 比较相邻的元素.如果第一个比第二个大,就交换它们两个: 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一 ...
- 看完我的笔记不懂也会懂----less
目录 Less学习 语法篇 注释 变量 映射(Maps) @规则嵌套和冒泡 less中的嵌套规则 less中的混合 less的运算 extend延伸/继承 less忽略编译(转义) 导入(Import ...
- PAT-1132(Cut Integer )数的拆分+简单题
Cut Integer PAT-1132 #include<iostream> #include<cstring> #include<string> #includ ...
- HDOJ-1213(简单并查集)
How many tables HDOJ-1213 #include<iostream> #include<cstring> #include<cstdio> #i ...
- nginx使用-2(模块和日志)
默认官方模块 1.1.Gzip压缩 压缩文件,使文件变小,传输更快了.目前市场上大部分浏览器是支持GZIP的.IE6以下支持不好,会出现乱码情况. 官方文档:http://nginx.org/en/d ...
- 如何动态生成EasyUI的表头
需求 前几天遇到了这样一个需求,在页面上展示一组数据,但是表头不固定,需要动态加载出来.比如这次查询表头有[姓名][年龄],可能下次查询表头就变成了[姓名][年龄][性别]. 思路简介 我刚刚接手这个 ...
- WM_CLOSE WM_QUIT WM_DESTROY 三者的区别
一 个窗口或者应用程序应该被关闭时发出WM_CLOSE消息,当接收到WM_CLOSE消息时,如果你愿意,向用户提出是否真的退出.你知道让用户作确认或 有错误出现或有什么应该注意的事情发生的时候,往往弹 ...
- 洛谷P1290欧几里德游戏
题目地址 题目大意: 两个人st和ol博弈 有两个整数n,m 每次轮到一个人时候,需要选择用大的那个数减去小的那个数的倍数(不能减为负数) 最后得到0的为胜利者 思路: (以下讨论均在n<m的条 ...
- KeyError:‘uid' Python常见错误
使用不存在的字典键值 检查字典和要查的内容 如有不正确改正即可