Pandas——ix vs loc vs iloc区别

Python3学习(四十四):pandas中Dataframe索引.ix,.iloc,.loc的使用以及区别 原文链接:https://blog.youkuaiyun.com/qq1483661204/article/details/77587881 作者:ML_BOY   1 定义一个pandas的DataFrame对像 import pandas as pd data = pd.DataFrame({'A':[1,2,3],'B':[4,5,6],'C':[7,8,9]},index=["a","b","... 阅读详情

Different Choices for Indexing

1. loc——通过行标签索引行数据

1.1 loc[1]表示索引的是第1行(index 是整数)

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = [0,1]
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.loc[1]
'''
a    4
b    5
c    6
'''

 

 

 

1.2 loc[‘d’]表示索引的是第’d’行(index 是字符)

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.loc['d']
'''
a    1
b    2
c    3
'''

 

 

 

1.3 如果想索引列数据,像这样做会报错

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.loc['a']
'''
KeyError: 'the label [a] is not in the [index]'
'''

 

 

 

1.4 loc可以获取多行数据

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.loc['d':]
'''
   a  b  c
d  1  2  3
e  4  5  6
'''

 

 

 

1.5 loc扩展——索引某行某列

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.loc['d',['b','c']]
'''
b    2
c    3
'''

 

 

 

1,6 loc扩展——索引某列

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.loc[:,['c']]
'''
   c
d  3
e  6
'''

 

 

 

当然获取某列数据最直接的方式是df.[列标签],但是当列标签未知时可以通过这种方式获取列数据。

需要注意的是,dataframe的索引[1:3]是包含1,2,3的,与平时的不同。

2. iloc——通过行号获取行数据

2.1 想要获取哪一行就输入该行数字

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.loc[1]
'''
a    4
b    5
c    6
'''

 

 

 

2.2 通过行标签索引会报错

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.iloc['a']
'''
TypeError: cannot do label indexing on <class 'pandas.core.index.Index'> with these indexers [a] of <type 'str'>
'''

 

 

 

2.3 同样通过行号可以索引多行

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.iloc[0:]
'''
   a  b  c
d  1  2  3
e  4  5  6
'''

 

 

 

2.4 iloc索引列数据

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.iloc[:,[1]]
'''
   b
d  2
e  5
'''

 

 

 

3. ix——结合前两种的混合索引

3.1 通过行号索引

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.ix[1]
'''
a    4
b    5
c    6
'''

 

 

 

3.2 通过行标签索引

 

import pandas as pd
data = [[1,2,3],[4,5,6]]
index = ['d','e']
columns=['a','b','c']
df = pd.DataFrame(data=data, index=index, columns=columns)
print df.ix['e']
'''
a    4
b    5
c    6
'''

 

想学人工智能(Python、数据分析、机器学习、深度学习、推荐系统、强化学习),来公众号AI派看看吧!!

 

ArcGIS实验教程——实验十七:缓冲区分析(Buffer Analysis) 【实验描述】缓冲区(Buffer)是为了识别某一地理实体对周围地物的影响而在其周围建立的一定宽度多边形区域,缓冲区分析(Buffer Analysis)是用来确定不同地理要素的空间临近性或接近程度的一种分析方法。作为GIS的空间分析方法之一,缓冲区分析的应用范围特别广泛,常用于分析矢量实体对周围的影响。例如,工厂排放的废水废气所影响的空间范围等等。 一、缓冲区的基本概念 1、缓冲区 是地理空间目标的一种影响范围或服务范围。 2、缓冲区分析 指根据分析对象的点、线、面实体,自动建立它们周围一定距离的带 阅读详情

相关推荐

无监督低照度增强实战:用ZeroDCE和SCI拯救你的夜间照片(附PyTorch代码)

本文深入探讨了无监督低照度图像增强技术,重点解析了ZeroDCE和SCI两大代表性模型的核心原理与实战应用。通过对比分析两者的技术路径、网络结构及性能特点,并附上详细的PyTorch代码实现,旨在帮助读者掌握无需配对数据即可有效提升夜间照片画质的深度学习解决方案。

git9versioner的博客 489

Python: pandas中ix的详细讲解

在上一篇博客中,我们已经仔细讲解了iloc和loc,只是简单了提到了ix。这是因为相比于前2者,ix更复杂,也更让人迷惑。 因此,本篇博客通过例子的解释试图来描述清楚ix,尤其是与iloc和loc的联系。 目录 1 使用ix切分Series 1.1 特点1举例 1.2 特点2举例 2 在Dataframe中使用ix实现复杂切片 3 参考文献 首先,再次介绍这三种方法的概述: lo...

anshuai_aw1的博客 6万+

NuPlayer 之 Renderer

触发postDrainAudioQueue_l()或postDrainVideoQueue()开始渲染。解码器输出数据 → NuPlayer::Decoder::onMessageReceived。音频数据存入mAudioQueue,视频数据存入mVideoQueue。• 每次写入后通过mNotifyConsumed通知解码器。• 通过AudioSink::write()写入音频设备。• 根据VSync信号和音频时钟调整渲染时机。• 通过Surface直接提交给显示系统。

aningxiaoxixi的博客 304

python中ix用法_Python:Pandas中的ix用法详细解释

终于弄懂了Pandas中ix()函数的用法了。首先生成一个数据框import numpy as npimport pandas as pddf = pd.DataFrame(np.arange(0,60,2).reshape(10,3),columns=list('abc'))df输出的数据框是这个样子的a b c0 0 2 41 6 8 102 12 14 1...

weixin_42346693的博客 5492

实验室LIMS系统选型指南:从赛默飞到金现代,5大主流方案横评

本文深入分析了实验室LIMS系统选型的5大核心维度,包括架构选择、行业适配性、合规性设计、智能化程度和成本模型。通过对比赛默飞、金现代等主流厂商的优劣势,提供实战避坑策略,帮助实验室管理者做出明智决策,提升运营效率和合规水平。

plum99的博客 257

NTFS分区变成RAW别乱修!正确数据恢复与修复方法详解

文件系统是操作系统管理存储数据的核心机制,NTFS作为Windows主流文件系统,一旦分区识别异常,常会显示为RAW格式。分区变RAW通常意味着文件系统入口信息损坏,而非数据物理消失,但若采用错误的修复方式,如直接对RAW分区执行chkdsk /f,可能因系统无法正确识别文件系统结构,导致写入操作落在错误偏移位置,二次破坏本可恢复的数据。正确的处理思路是:先停止一切写入操作,通过扇区级镜像备份保留原始现场,再分析DBR、分区表及$MFT状态,依据诊断结果选择修复或深度扫描恢复。实际排查中,常见问题如DBR记

weixin_31155097的博客 134

pandas中的切片函数: .iloc()、.loc()、.ix() 的区别

文章目录pandas中的切片函数:`.iloc()`、`.loc()`、`.ix()`1、首先创建一个DataFrameiloc:通过行/列号选取数据1、 .iloc就是通过行/列号来选取数据,比如我们可以这样来选取第0行数据2、选取多行数据3、按照列号选取某列,如选取第二列4、按照行号选取某行某列,比如选取第0行第2列5、根据行号选取多行多列,比如选取第0-2行第0-2列loc通过标签选取数据1、选取第1行数据2、按标签选取第b行3、按标签选取多行4、按标签选取某列5、按标签选取多列6、按标签选取某行某列

weixin_45793065的博客 6973

从零构建:Trinamic API在STM32上的深度移植与TMC-IDE通信实战

本文详细介绍了如何从零开始在STM32平台上深度移植Trinamic API,并实现与TMC-IDE工具的稳定通信。内容涵盖SPI底层驱动定制、寄存器配置、高级功能实现及调试技巧,重点解析了TMC5160芯片的集成实践,帮助开发者构建可靠的嵌入式运动控制系统。

w1x2y3的博客 254

机器学习(2)Pandas数据读取、选择、定位(loc、iloc、ix)

""" 读取csv文件 该文本中的分割符既有空格又有制表符(‘/t’),sep参数用‘/s+’,可以匹配任何空格。 """ import pandas as pd dataset1 = pd.read_csv('C:/Users/62497/Desktop/data1.csv',sep='\s+') # header=None:没有每列的column name,可以自己设定 # encoding=...

weixin_44285715的博客 2万+

PX4从放弃到精通(三):使用qt编译PX4

1 下载px4源码 2在Firmware所在目录下执行 mkdir Firmware-build cd Firmware-build cmake …/Firmware -G “CodeBlocks - Unix Makefiles” -DCONFIG=nuttx_px4_fmu-v5_default 第三步最后的px4_fmu-v5_default根据自己的情况修改 执行完后如图 打开QT 点击打开工程 选择源码的CmakeLists.txt文件 选择imported Kit 打开项目那一栏,构建目

超维空间科技的博客 1万+

Codex入门24-效率倍增秘籍(终极总结:10个让你开发速度翻倍的Codex高级技巧)

专栏收官之作!经过前23篇的系统学习,你已经掌握了 Codex CLI 的核心用法。本文浓缩10个实战验证的高级技巧:管道化提示词将复杂任务拆成递进指令链,模板化 SKILL.md 打造个人技能库,Shell 别名让操作快如闪电,多模型切换省钱又高效……这不是理论课,每个技巧都配有可直接运行的代码。掌握全部10招,构建你的 AI 开发工作流闭环,让开发速度真正翻倍!

yueyeguzhuo的专栏 188

python数据分析之pandas数据预处理(数据合并与数据提取、loc、iloc、ix函数详解)

关于python数据分析之pandas,是数据分析学习和练习实践的文章。涉及数据预处理,数据合并与数据提取三大方面的内容。详细讲述了loc、iloc、ix函数的具体用法和注意事项,以及merge数据表连接、索引列、排序、特定标记、分列、提取字符生成新表、isin条件提取等方面。(需要一定python基础)

Viewinfinitely的博客 4263

c++ pcl点云处理(2025 长期更新)

目录1.常用的点云文件2.认识点云的文件格式3.点云的数据结构4.输入输出(IO)5.KD树6.Oc树(八叉树)7.点云可视化8.点云滤波9.点云拟合分割10.点云与图像11.特征点与特征描述及提取12.点云配准13.点云曲面重建

twnkie的博客 2257

Python笔记:df.loc[]和df.iloc[]的区别

stackoverflow原文:pandas iloc vs ix vs loc explanation; how are they different? 在pandas 0.20.0及以上版本,ix已经被loc和iloc取代了,因此不讨论它。 前提,简单介绍一下它俩: – loc利用index的名称,来获取想要的行(或列)。 – iloc利用index的具体位置(所以它只能是整数型参数),...

htuhxf的博客 5万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

pandas-loc和iloc索引的对比

pandas读取数据后可以很方便的索引数据,其中我们可以直接从pandas数据读取,例如:df = pd.DataFrame({'A': ['a', 'b', 'a'], 'B': ['b', 'a', 'c'],'C': [1, 2, 3]}) df Out[54]: A B C 0 a b 1 1 b a 2 2 a c 3 df["A"] Out[5...

Dawei_01的博客 1312

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

python loc_python .loc vs .iloc区别

1.loc意义:通过行标签索引行数据例: loc[n]表示索引的是第n行(index 是整数)loc[‘d’]表示索引的是第’d’行(index 是字符)2..iloc :通过行号获取行数据,不能是字符3. ix——结合前两种的混合索引三者区别:ix / loc 可以通过行号和行标签进行索引,比如 df.loc['a'] , df.loc[1], df.ix['a'] , df.ix[1]...

weixin_39563420的博客 233

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

python .loc vs .iloc区别

1.loc意义:通过行标签索引行数据 例: loc[n]表示索引的是第n行(index 是整数) loc[‘d’]表示索引的是第’d’行(index 是字符) 2..iloc :通过行号获取行数据,不能是字符 3. ix——结合前两种的混合索引 三者区别: ix / loc 可以通过行号和行标签进行索引,比如 df.lo...

weixin_30384217的博客 348

python ix loc iloc_关于python:.ix()是否总是比.loc()和.iloc()更好,因为它速度更快并且支持整数和标签访问?...

我正在学习Python熊猫库。 来自R的背景,索引和选择函数似乎比它们需要的复杂。 我的理解是.loc()仅基于标签,.iloc()仅基于整数。如果.ix()更快并且支持整数和标签访问,为什么还要使用.loc()和.iloc()?这里的答案应该非常有帮助!切勿使用.ix! 对于.loc,.iloc和[]之间的差异,这是一个更有帮助的答案熊猫iloc vs ix vs loc的解释可能重复吗?请参考...

weixin_39977886的博客 191
上一篇: 使用sklearn优雅地进行数据挖掘
下一篇: 分类器性能评估之混淆矩阵(1)
Wang_AI
博客等级 码龄12年 988粉丝 162原创
评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值