数学建模之数据分析【七】:对Pandas DataFrame 进行切片
文章目录
- 一、切片简介
- 二、创建Pandas数据框
- 三、使用iloc进行切片
- 3.1 对行进行切片
- 3.2 对列进行切片
- 3.3 Dataframe选中特定单元格
- 四、使用loc创建切片
- 4.1 使用Python对Dataframe中的行进行切片
- 4.2 指定单元格
- 五、在Python中使用布尔条件
- 六、结论
对 Pandas DataFrames 进行切片,是一种强大的技术,允许根据整数位置或标签位置提取特定的数据子集。本文,我们将学习行和列切片、单元格选择和布尔条件的用法。
一、切片简介
借助 Pandas,我们可以在 Dataframe 中执行切片。使用 Pandas Dataframe 进行切片iloc[] 是 Python 中提取特定数据子集的一种强大技术。该iloc[] 方法允许您根据行和列的整数位置来定位和提取它们。
要使用 执行切片iloc[],请指定要包含在切片数据框中的行和列索引。语法类似于传统的数组切片,对于 Python 用户来说非常直观。例如,df.iloc[1:5, 2:4]从数据框中提取第 2 至第 5 行和第 3 至第 4 列。
在 Pandas 中对 DataFrame 进行切片包括以下步骤:
- 创建 DataFrame
- 对 DataFrame 进行切片
二、创建Pandas数据框
import pandas as pd# Initializing the nested list with Data set
player_list = [['M.S.Dhoni', 36, 75, 5428000],['A.B.D Villers', 38, 74, 3428000],['V.Kohli', 31, 70, 8428000],['S.Smith', 34, 80, 4428000],['C.Gayle', 40, 100, 4528000],['J.Root', 33, 72, 7028000],['K.Peterson', 42, 85, 2528000]]# creating a pandas dataframe
df = pd.DataFrame(player_list, columns=['Name', 'Age', 'Weight', 'Salary'])
df # data frame before slicing
运行结果:
三、使用iloc进行切片
3.1 对行进行切片
# Slicing rows in data frame
df1 = df.iloc[0:4] #对第一行到第四行进行切片
# data frame after slicing
df1
3.2 对列进行切片
对列进行切片:
# Slicing columnss in data frame
df1 = df.iloc[:, 0:2]#所有行,第1,2列
# data frame after slicing
df1
3.3 Dataframe选中特定单元格
选中特定单元格,列入第三行,第四列:
specific_cell_value = df.iloc[2, 3] # Row 3, Column 4 (Salary)
print("Specific Cell Value:", specific_cell_value)
输出:
8428000
四、使用loc创建切片
还可以通过 loc 实现切片,但有一些限制:
- loc依赖于标签,如果您的 DataFrame 有自定义标签,您需要小心指定它们的方式。
- 如果标签是整数,则使用整数位置和实际标签之间可能会产生混淆。
为此,我们需要使用以下代码手动将索引设置为标签:
df_custom = df.set_index('Name')
df_custom
运行结果:
4.1 使用Python对Dataframe中的行进行切片
sliced_rows_custom = df_custom.loc['A.B.D Villers':'S.Smith']
sliced_rows_custom
4.2 指定单元格
specific_cell_value = df_custom.loc['V.Kohli', 'Salary']
print("\nValue of the Specific Cell (V.Kohli, Salary):", specific_cell_value)
五、在Python中使用布尔条件
filtered_data = df[df['Age'] > 35].iloc[:, :] # Select rows where Age is greater than 35
print("\nFiltered Data based on Age > 35:\n", filtered_data)
iloc()只是分割,df可做筛选。
六、结论
总而言之,iloc[] 和 loc[] 均在 Pandas 中提供多种切片功能。iloc[] 基于整数,而 loc[] 则依赖于标签,因此在使用自定义索引或混合数据类型时需要仔细考虑。
相关文章:

数学建模之数据分析【七】:对Pandas DataFrame 进行切片
文章目录 一、切片简介二、创建Pandas数据框三、使用iloc进行切片3.1 对行进行切片3.2 对列进行切片3.3 Dataframe选中特定单元格 四、使用loc创建切片4.1 使用Python对Dataframe中的行进行切片4.2 指定单元格 五、在Python中使用布尔条件六、结论 对 Pandas DataFrames 进行切…...
删除 Docker 容器的日志文件
删除 Docker 容器的日志文件可以帮助释放磁盘空间。以下是步骤: 1、查找日志文件路径: Docker 容器的日志通常存储在 /var/lib/docker/containers/<container_id>/ 目录下。日志文件通常名为 container_id-json.log。 通过以下命令找到日志文件的位置: docker ins…...

DevOps入门(上)
1: DevOps概念 DevOps: Development 和 Operations 的组合 DevOps 看作开发(软件工程)、技术运营和质量保障(QA)三者的交集。 突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使…...
基于Python的网易民谣歌词数据分析的设计与实现
基于Python的网易民谣歌词数据分析的设计与实现 Design and Implementation of Data Analysis for NetEase Folk Song Lyrics Based on Python 完整下载链接:基于Python的网易民谣歌词数据分析的设计与实现 文章目录 基于Python的网易民谣歌词数据分析的设计与实现摘要第一章…...
趋动科技联合云轴科技推出GPU云原生超融合解决方案
近日,趋动科技VirtAITech携手云轴科技ZStack推出GPU云原生超融合联合解决方案,提供全面、可扩展的云原生GPU存算一体化解决方案。 该方案基于云原生超融合及GPU资源池化技术,使得GPU资源管理变得更加简便易用,能够帮助企业用户在…...

Dooring智图,一款开箱即用的图片海报编辑器
嗨, 大家好, 我是徐小夕. 之前一直在社区分享零代码&低代码的技术实践,也陆陆续续设计并开发了多款可视化搭建产品,比如: Nocode/Doc,可视化 零代码打造下一代文件编辑器爆肝1000小时, Dooring零代码搭建平台3.5正式上线可视化…...

苹果macbook电脑怎么玩《黑神话:悟空》游戏教程来了
火爆全网《黑神话:悟空》是一款基于中国神话故事《西游记》改编的动作角色扮演游戏,它在PC平台上的系统要求已经公布,但目前官方尚未发布Mac版本。不过,Mac用户可以通过使用系统兼容工具如CrossOver来尝试在Mac上运行这款游戏。Cr…...
git 目录提交代码
初始化 Git 仓库(如果尚未初始化): 如果还没有初始化 Git 仓库,运行以下命令: git init将远程仓库添加到目录 b 中: 如果尚未关联远程仓库,添加远程仓库: git remote add origin <…...

多商户商品下单限购问题修复
问题: 当商品设置限购为 1 时,够买数量未超过限购,但是还是提示超出限购数量 修复方法: 修改代码路径: app\common\repositories\store\order\StoreOrderCreateRepository.php 修改代码一: i s p a y s a r r a y u n i q u e ( a r r a y c o l u m n ( is_pays array_un…...

eNSP 华为ACL配置
华为ACL配置 需求: 公司保证财务部数据安全,禁止研发部门和互联网访问财务服务器,但总裁办不受影响 R1: <Huawei>sys [Huawei]sys Router1 [Router1]undo info-center enable [Router1]int g1/0/0 [Router1-GigabitEth…...

实现高效研发运营一体化:深度落地DevOps解决方案的探索与实践
前言与概述 伴随着企业业务的快速发展,为了支撑业务发展,提高 IT 对业务的支撑能力建设。在研发工程协同方面,希望加强代码管理,实现持续构建、自动化测试、自动化部署、自动化运维,同时加强产品的安全和质量管理&…...
Milvus向量数据库-磁盘索引简介
以下内容是自己在学习Milvus向量数据库时,在Milvus官方网站文档库中对索引的学习整理和翻译,通过自己和借助翻译软件进行了理解整合翻译,有可能有一些地方理解整理的不到位,还望大家理解。 一、磁盘索引 本文介绍了一种名为Disk…...

Web漏洞介绍和Sql注入漏洞
常规渗透测试流程 漏洞探测包括:web漏洞测试,系统漏洞测试 工具探测、手工验证 优先找的漏洞:中间(件)漏洞、框架漏洞...webserver 知道创宇 Seebug 漏洞平台 - 洞悉漏洞,让你掌握前沿漏洞情报ÿ…...
【Eureka】Eureka 介绍与实战
1. Eureka 简介 Eureka 是 Netflix 开发的一个服务注册和发现组件,主要用于微服务架构中。它的核心功能是帮助微服务之间进行通讯和管理,使得服务能够动态地发现彼此,实现灵活的服务调用和负载均衡。 1.1 核心概念 服务注册中心࿰…...
密码管理系统的自动化与集成:重塑安全与效率的双重飞跃
在数字化时代,密码作为保护个人信息、企业资产及敏感数据的第一道防线,其重要性不言而喻。然而,随着网络应用的激增和复杂性的提升,传统的密码管理方式——如使用简单密码、重复密码或依赖记忆——已难以满足现代安全需求…...
Outlook如何精确搜索邮件?
Outlook如何精确搜索邮件? 参考链接:https://jingyan.baidu.com/article/e75aca853148ba552edac6b6.html 我们在使用Outlook搜索功能时,直接输入关键词的话,会出来很多不相关的内容,那么有没有办法让搜索时更加精确呢…...

MambaCSR: 使用SSM的双交错扫描压缩图像超分辨率
MambaCSR: Dual-Interleaved Scanning for Compressed Image Super-Resolution With SSMs 2408.11758 (arxiv.org) GitHub - renyulin-f/MambaCSR: The code source of MambaCSR 摘要 本文提出了MambaCSR,这是一个基于Mamba的简单但有效的框架,用于解决…...

【C++】深入解析C/C++内存管理:new与delete的使用及原理
C语法相关知识点可以通过点击以下链接进行学习一起加油!命名空间缺省参数与函数重载C相关特性类和对象-上篇类和对象-中篇类和对象-下篇日期类 本章将分享C为何放弃malloc/free系列,选择新系列new/delete去管理内存。深度探索new/delete的使用及其原理,m…...

递归--数据结构--黑马
递归 总结一句话,上手直接多刷Leetcode,比看这个更有用。 定义 递归是一种解决计算问题的方法,其中解决方案取决于同一类问题的更小子集。 例如,单链表递归遍历的例子: void f(Node node) {if (node null) {retu…...
【3.1】贪心算法-解分发饼干
一、题目 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是, 每个孩子最多只能给一块饼干 。 对每个孩子i,都有一个 胃口值 g[i] ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...
java 实现excel文件转pdf | 无水印 | 无限制
文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...

376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...
IP如何挑?2025年海外专线IP如何购买?
你花了时间和预算买了IP,结果IP质量不佳,项目效率低下不说,还可能带来莫名的网络问题,是不是太闹心了?尤其是在面对海外专线IP时,到底怎么才能买到适合自己的呢?所以,挑IP绝对是个技…...
腾讯云V3签名
想要接入腾讯云的Api,必然先按其文档计算出所要求的签名。 之前也调用过腾讯云的接口,但总是卡在签名这一步,最后放弃选择SDK,这次终于自己代码实现。 可能腾讯云翻新了接口文档,现在阅读起来,清晰了很多&…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...
PostgreSQL——环境搭建
一、Linux # 安装 PostgreSQL 15 仓库 sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{rhel})-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 安装之前先确认是否已经存在PostgreSQL rpm -qa | grep postgres# 如果存在࿰…...