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 ...
随机推荐
- Vue框架:vue-cookies组件
目录 一.vue-cookies简介 二.vue-cookies安装与配置 三.vue-cookies的使用 一.vue-cookies简介 vue-cookies组件是vue框架用来操作浏览器coo ...
- Course2.1 Graph Paper Programming
Overview 通过日常生活中的活动来体验程序算法,目标时能够将现实世界的场景与程序场景关联起来. Objective 抓住将现实世界问题转换为程序的难点: 你认为非常明确的指令在计算机看来可能还是 ...
- Lua C++交互 应用实例步骤(UserData使用)
一.配置Lua C++交互环境 1.下载Lua 包环境 地址: https://www.lua.org/download.html ,我们这里用的是5.4.2版本. 2.新建C++ 控制台应用程序 3 ...
- FutureTask源码分析(JDK7)
总览 A cancellable asynchronous computation. This class provides a base implementation of {@link Futur ...
- HDOJ-1029(简单dp或者排序)
Ignatius and the Princess IV hdoj-1029 这里主要是先排序,因为要找出现了一半以上的数字,所以出现的数字一定在中间 方法一: #include<iostrea ...
- dubbo实战之二:与SpringBoot集成
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 【Arduino学习笔记02】第一个Arduino项目——点亮LED Blink.ino程序解读 Arduino程序基本结构 pinMode() digitalWrite() delay()
/* Blink Turns an LED on for one second, then off for one second, repeatedly. */// define variables ...
- Fastjson <=1.2.24-反序列化-任意命令执行
漏洞分析 https://www.secpulse.com/archives/72391.html 复现参考 https://www.cnblogs.com/hack404/p/11980791.ht ...
- 关于PHP的__construct()函数
1 <?php 2 header("Content-Type:text/html;charset=utf-8");//调整为utf-8编码格式 3 class car 4 { ...
- 单元测试 - SpringBoot2+Mockito实战
单元测试 - SpringBoot2+Mockito实战 在真实的开发中,我们通常是使用SpringBoot的,目前SpringBoot是v2.4.x的版本(SpringBoot 2.2.2.RELE ...