Python_AI库 Pandas的loc和iloc的区别与使用实例

Python中Pandas的lociloc的区别与使用实例

在这里插入图片描述

在Pandas中,lociloc是两个常用的方法,用于基于标签(label)和整数位置(integer location)来选择数据。尽管两者在功能上有重叠,但它们在用法和性能上有所不同。下面将详细解释它们之间的区别,并通过实例来演示它们的使用。

loc vs iloc

  • loc:基于标签进行选择。它使用行标签和列标签来选择数据。对于DataFrame,这些标签通常是列名和行索引。
  • iloc:基于整数位置进行选择。它使用基于0的索引来选择数据,忽略行标签和列标签的实际值。

使用实例

假设我们有一个如下的DataFrame:

import pandas as pddata = {'A': [1, 2, 3, 4],'B': [5, 6, 7, 8],'C': [9, 10, 11, 12],'D': [13, 14, 15, 16]
}df = pd.DataFrame(data, index=['row1', 'row2', 'row3', 'row4'])
print(df)

输出:

      A  B   C   D
row1  1  5   9  13
row2  2  6  10  14
row3  3  7  11  15
row4  4  8  12  16
使用loc
  1. 选择索引为’row2’的行:
print(df.loc['row2'])

输出:

A     2
B     6
C    10
D    14
Name: row2, dtype: int64
  1. 选择列’A’和’C’:
print(df.loc[:, ['A', 'C']])

输出:

      A   C
row1  1   9
row2  2  10
row3  3  11
row4  4  12
使用iloc
  1. 选择第二行(基于0的索引):
print(df.iloc[1])

输出:

A     2
B     6
C    10
D    14
Name: row2, dtype: int64

注意,尽管这里我们选择了索引为1的行,但输出的行标签仍然是’row2’,因为iloc是基于整数位置选择的,而不是基于标签。

  1. 选择前两列:
print(df.iloc[:, :2])

输出:

      A  B
row1  1  5
row2  2  6
row3  3  7
row4  4  8

注意事项

  • 当DataFrame的索引是整数时,使用loc可能会产生混淆,因为此时标签和位置可能会重叠。在这种情况下,使用iloc会更清晰。
  • loc通常比iloc更快,因为loc使用标签进行选择,这通常是一个哈希操作,而iloc可能需要额外的步骤来将整数位置映射到实际的标签。
  • 在某些情况下,使用lociloc的组合可以实现更复杂的选择逻辑。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/834570.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

去哪儿网机票服务请求体bella值逆向

作者声明:文章仅供学习交流与参考!严禁用于任何商业与非法用途!否则由此产生的一切后果均与作者无关!如有侵权,请联系作者本人进行删除! 一、加密定位 直接全局搜索bella,在可疑的地方下断&…

汇编--栈和寄存器

栈 栈是一种运算受限的线性表,其限定仅在表尾进行插入和删除操作的线性表,表尾也被叫做栈顶。简单概括就是我们对于元素的操作只能够在栈顶进行,也造就了其先进后出的结构特性。 栈 这种内存空间其实本质上有两种操作:将数据放入…

在Ubuntu安装RPM文件

Ubuntu软件源包含数千个deb软件包,可以从Ubuntu软件中心或使用apt命令行安装。 Deb是所有基于Debian的Linux发行版,例如包括Ubuntu,Linux mint等发行版使用的安装包格式。 如果某些软件在Ubuntu软件源中不可用,可以通过启用适当的…

物联网实战--平台篇之(五)账户界面

目录 一、界面框架 二、首页(未登录) 三、验证码登录 四、密码登录 五、帐号注册 六、忘记密码 本项目的交流QQ群:701889554 物联网实战--入门篇https://blog.csdn.net/ypp240124016/category_12609773.html 物联网实战--驱动篇https://blog.csdn.net/ypp240124016/cat…

物联网网关制造生产全流程揭秘!

如果您正有开发和定制物联网网关的计划,找一个专业的物联网设备厂商协助您制造生产物联网网关可以节省大量时间和成本,可以让您能专注于当前核心业务,而无需将精力过多地投入到自己不擅长的领域。 当然,了解物联网网关的测试和制…

HSA-42014和安泰ATA-4014C高压功率放大器对比

企业背景: Aigtek是一家来自中国的专业从事测量仪器研发、生产和销售的高科技企业。公司主要研发和生产功率放大器、功率放大器模块、功率信号源、计量校准源等产品。核心团队主要是来自西安交通大学及西北工业大学的专家教授等联合组成研发团队,目前拥有…

OPC UA(二)

一、配置PC Station 在TIA博途软件平台中配置PC Station,见(一) 二、使用OPC Scout V10测试通信结果 1. 添加OPC UA Server站点 1.1启动OPC Scout V10 1.2 打开OPC Scout V10,在 Server explorer窗口,查找UA serv…

Linux流量分析工具 | nethogs

在应急过程中,经常会遇到应用访问缓慢,网络阻塞的情况,分析原因可能会想到存在恶意程序把带宽占满的可能。通过这样一个小工具可以快速定位异常占用带宽程序的路径、PID、占用流量大小或是排除由带宽占满导致服务器缓慢的猜想。 一、简介 Ne…

Python学习——环境搭建

Python 介绍 Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/)是一种广泛使用的解释型、高级编程、通用型编程语言,由吉多范罗苏姆创造,第一版发布于1991年。可以视之为一种改良(加入…

DDD领域驱动模型设计

醍醐灌顶了朋友们 第一次写ddd还是 一路走来 丢失了东西 现在倒是也能找回来 只是有点可惜了 选择比努力更重要 独立功能 应用层:组织业务逻辑 领域:实体对象领域,业务核心 数据仓库: 不影响业务封装了数据操作,…

嵌入式开发九:STM32时钟系统

时钟对于单片机来说是非常重要的,它为单片机工作提供一个稳定的机器周期从而使系统能够正常运行。时钟系统犹如人的心脏,一旦有问题整个系统就崩溃。我们知道 STM32 属于高级单片机,其内部有很多的外设,但不是所有外设都使用同一时…

云计算安全扩展要求解析

云计算技术的信息系统,称为云计算平台/系统。 云计算平台/系统由设施、硬 件、资源抽象控制层、虚拟化计算资源、软件平台和应用软件等组成。 软件即服务(SaaS)、平台即服务 (PaaS) 、基础设施即服务ClaaS)是三种基本的云计算服务模式。在不同…

实验10配置 IPv4 和 IPv6 静态和 默认路由(课内实验)

上面这个是实验描述 下面是给的实验图 接下来我们跟着实验一步一步进行下去 第 1 部分:配置 IPv4 静态和 浮动静态默认路由配置ipv4静态路由:配置 IPv4静态和 浮动静态默认路由 步骤 1:配置一条 IPv4 静态 默认路由。在 Edge_Router 上&am…

ASP.NET校园新闻发布系统的设计与实现

摘 要 校园新闻发布系统是在学校区域内为学校教育提供资源共享、信息交流和协同工作的计算机网络信息系统。随着网络技术的发展和Internet应用的普及,互联网已成为人们获取信息的重要来源。由于现在各大学校的教师和学生对信息的需求越来越高,校园信息…

Linux-笔记 修改开发板默认时区

1. 时区文件 使用命令date -R查看当前的默认时区,date - R命令会自动解析/etc/localtime 文件,而该文件又是指向“ /usr/share/zoneinfo/$主时区/$次时区 ”,当需要更改到指定的时区只要将/etc/localtime 文件软链接到 ”/usr/share/zoneinf…

13 华三三层链路聚和

13 华三三层链路聚和 AI 解析 华三三层静态路由是指在华三交换机上配置的一种路由方式。它通过在交换机上手动配置路由表,将不同网络之间的数据进行转发。 华三三层静态路由的配置步骤如下: 1. 配置交换机接口的IP地址:在交换机上选择要配…

95、动态规划-编辑距离

递归暴力解法 递归方法的基本思想是考虑最后一个字符的操作,然后根据这些操作递归处理子问题。 递归函数定义:定义一个递归函数 minDistance(i, j),表示将 word1 的前 i 个字符转换成 word2 的前 j 个字符所需的最小操作数。 递归终止条件…

【计算机毕业设计】基于SSM++jsp的蜀都天香酒楼网站【源码+lw+部署文档+讲解】

目录 摘要 Abstract 目 录 1绪论 1.1研究背景与意义 1.2国内外研究现状 1.3研究内容 1.4论文结构 2相关技术介绍 2.1 B/S模式 2.2 MyEclipse开发环境 2.3 MySQL数据库 2.4 Java语言 2.5 JSP技术 2.6 Tomcat服务器 3系统分析 3.1需求分析 3.2可行性分析 3.2.1经济可行性 3.2.2技…

[Linux深度学习笔记5.9]

5.9笔记 DNS: 软硬链接: 软链接: 软链接:ln -s /源文件 /目标位置/链接名称》创建软链接1.既可以对目录使用,也可以对文件使用2.删除源文件,软链接不可用3.软链接可以跨文件系统使用4.源文件和软链接的inode号不同5.…

短信平台群发服务有什么优点

短信平台群发服务有什么优点 提高营销效率 短信平台群发服务利用自动化技术,可以帮助企业迅速向大量潜在客户营销信息。相比传统的逐一方式,群发服务可以同时大批目标客户,大大提高了营销效率。企业可以轻松地在短时间内覆盖更多的潜在客户&…