Python酷库之旅-第三方库Pandas(174)
目录
一、用法精讲
801、pandas.Categorical类
801-1、语法
801-2、参数
801-3、功能
801-4、返回值
801-5、说明
801-6、用法
801-6-1、数据准备
801-6-2、代码示例
801-6-3、结果输出
802、pandas.Categorical.from_codes方法
802-1、语法
802-2、参数
802-3、功能
802-4、返回值
802-5、说明
802-6、用法
802-6-1、数据准备
802-6-2、代码示例
802-6-3、结果输出
803、pandas.Categorical.dtype属性
803-1、语法
803-2、参数
803-3、功能
803-4、返回值
803-5、说明
803-6、用法
803-6-1、数据准备
803-6-2、代码示例
803-6-3、结果输出
804、pandas.Categorical.categories属性
804-1、语法
804-2、参数
804-3、功能
804-4、返回值
804-5、说明
804-6、用法
804-6-1、数据准备
804-6-2、代码示例
804-6-3、结果输出
805、pandas.Categorical.ordered属性
805-1、语法
805-2、参数
805-3、功能
805-4、返回值
805-5、说明
805-6、用法
805-6-1、数据准备
805-6-2、代码示例
805-6-3、结果输出
二、推荐阅读
1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页
一、用法精讲
801、pandas.Categorical类
801-1、语法
# 801、pandas.Categorical类
class pandas.Categorical(values, categories=None, ordered=None, dtype=None, fastpath=_NoDefault.no_default, copy=True)
Represent a categorical variable in classic R / S-plus fashion.Categoricals can only take on a limited, and usually fixed, number of possible values (categories). In contrast to statistical categorical variables, a Categorical might have an order, but numerical operations (additions, divisions, …) are not possible.All values of the Categorical are either in categories or np.nan. Assigning values outside of categories will raise a ValueError. Order is defined by the order of the categories, not lexical order of the values.Parameters:
values
list-like
The values of the categorical. If categories are given, values not in categories will be replaced with NaN.categories
Index-like (unique), optional
The unique categories for this categorical. If not given, the categories are assumed to be the unique values of values (sorted, if possible, otherwise in the order in which they appear).ordered
bool, default False
Whether or not this categorical is treated as a ordered categorical. If True, the resulting categorical will be ordered. An ordered categorical respects, when sorted, the order of its categories attribute (which in turn is the categories argument, if provided).dtype
CategoricalDtype
An instance of CategoricalDtype to use for this categorical.Raises:
ValueError
If the categories do not validate.TypeError
If an explicit ordered=True is given but no categories and the values are not sortable.
801-2、参数
801-2-1、values(必须):array-like(如列表、numpy数组等),表示输入的值,通常是一个列表、数组或其他可迭代对象,其中的数据将被转换为分类类型。
801-2-2、categories(可选,默认值为None):array-like,定义分类的类别,可以是一个列表或数组,包含所有可能的类别。如果不指定,类别将从values中提取。如果categories的元素不包含在values中,仍可将其指定,但这些类别将被视为未出现类别。
801-2-3、ordered(可选,默认值为None):布尔值,指定类别是否有顺序,如果设为True,则可用来执行有序比较。
801-2-4、dtype(可选,默认值为None):CategoricalDtype或其他类型,指定类别的数据类型,可以通过设置此参数来自定义数据类型。
801-2-5、fastpath(可选):布尔值,如果设为True,将绕过一些验证和处理步骤,适用于已经知道数据是分类的情况。
801-2-6、copy(可选,默认值为True):布尔值,指定是否复制输入的数据,如果设为True,将创建values的副本。
801-3、功能
- 内存效率: 使用分类数据可以显著降低内存消耗,特别是在处理重复类别的情况下。
- 提高性能: 在数据分析中,分类数据的比较和处理速度通常比非分类数据快。
- 易于操作: 提供诸如排序、分组等功能,可以方便地进行数据操作。
801-4、返回值
返回一个Categorical对象,其中包含:
- 分类值: 将values变量转换为指定的分类类型。
- 类别信息: 所有定义的类别,包括用户提供的类别和从values中提取的类别。
- 有序性信息: 指示类别是否有序的布尔值。
801-5、说明
无
801-6、用法
801-6-1、数据准备
无
801-6-2、代码示例
# 801、pandas.Categorical类
import pandas as pd
# 创建一个分类类型数据
data = ['apple', 'banana', 'orange', 'banana', 'apple']
cat_data = pd.Categorical(data, categories=['apple', 'banana', 'orange'], ordered=True)
print(cat_data)
801-6-3、结果输出
# 801、pandas.Categorical类
# ['apple', 'banana', 'orange', 'banana', 'apple']
# Categories (3, object): ['apple' < 'banana' < 'orange']
802、pandas.Categorical.from_codes方法
802-1、语法
# 802、pandas.Categorical.from_codes方法
classmethod Categorical.from_codes(codes, categories=None, ordered=None, dtype=None, validate=True)
Make a Categorical type from codes and categories or dtype.This constructor is useful if you already have codes and categories/dtype and so do not need the (computation intensive) factorization step, which is usually done on the constructor.If your data does not follow this convention, please use the normal constructor.Parameters:
codesarray-like of int
An integer array, where each integer points to a category in categories or dtype.categories, or else is -1 for NaN.categoriesindex-like, optional
The categories for the categorical. Items need to be unique. If the categories are not given here, then they must be provided in dtype.orderedbool, optional
Whether or not this categorical is treated as an ordered categorical. If not given here or in dtype, the resulting categorical will be unordered.dtypeCategoricalDtype or “category”, optional
If CategoricalDtype, cannot be used together with categories or ordered.validatebool, default True
If True, validate that the codes are valid for the dtype. If False, don’t validate that the codes are valid. Be careful about skipping validation, as invalid codes can lead to severe problems, such as segfaults.New in version 2.1.0.Returns:
Categorical
802-2、参数
802-2-1、codes(必须):整数数组,表示每个数据点对应的类别编码。
802-2-2、categories(可选,默认值为None):指定类别的顺序,如果未提供,则从codes中推断。
802-2-3、ordered(可选,默认值为None):布尔值,指定分类是否有序。
802-2-4、dtype(可选,默认值为None):指定返回的Categorical对象的dtype。
802-2-5、validate(可选,默认值为True):布尔值,如果为True,会检查codes是否有效(即是否在[0, len(categories))范围内)。
802-3、功能
用于从整数编码和类别创建Categorical对象,它提供了一种直接从编码创建分类数据的方式,而不是从原始数据转换。
802-4、返回值
返回一个新的Categorical对象。
802-5、说明
无
802-6、用法
802-6-1、数据准备
无
802-6-2、代码示例
# 802、pandas.Categorical.from_codes方法
import pandas as pd
codes = [0, 1, 2, 1, 0]
categories = ['apple', 'banana', 'orange']
cat = pd.Categorical.from_codes(codes, categories)
print(cat)
802-6-3、结果输出
# 802、pandas.Categorical.from_codes方法
# ['apple', 'banana', 'orange', 'banana', 'apple']
# Categories (3, object): ['apple', 'banana', 'orange']
803、pandas.Categorical.dtype属性
803-1、语法
# 803、pandas.Categorical.dtype属性
property Categorical.dtype
The CategoricalDtype for this instance.
803-2、参数
无
803-3、功能
用于获取或设置分类数据的类型信息。
803-4、返回值
返回一个CategoricalDtype对象,表示该分类数据的类别及其是否有序的信息。
803-5、说明
无
803-6、用法
803-6-1、数据准备
无
803-6-2、代码示例
# 803、pandas.Categorical.dtype属性
import pandas as pd
# 创建一个Categorical对象
cat = pd.Categorical(['apple', 'banana', 'apple'], categories=['apple', 'banana', 'orange'], ordered=True)
# 获取dtype属性
dtype_info = cat.dtype
print(dtype_info)
# 获取类别
print(dtype_info.categories)
# 检查是否有序
print(dtype_info.ordered)
803-6-3、结果输出
# 803、pandas.Categorical.dtype属性
# category
# Index(['apple', 'banana', 'orange'], dtype='object')
# True
804、pandas.Categorical.categories属性
804-1、语法
# 804、pandas.Categorical.categories属性
property Categorical.categories
The categories of this categorical.Setting assigns new values to each category (effectively a rename of each individual category).The assigned value has to be a list-like object. All items must be unique and the number of items in the new categories must be the same as the number of items in the old categories.Raises:
ValueError
If the new categories do not validate as categories or if the number of new categories is unequal the number of old categories.
804-2、参数
无
804-3、功能
提供一个包含分类数据的所有唯一类别的索引对象,该索引对象可以用来查看和操作分类数据中的类别。
804-4、返回值
返回一个Index对象,其中包含分类数据中所有唯一的类别。
804-5、说明
无
804-6、用法
804-6-1、数据准备
无
804-6-2、代码示例
# 804、pandas.Categorical.categories属性
import pandas as pd
# 创建一个分类数据
data = pd.Categorical(["a", "b", "c", "a", "b"])
# 获取分类的所有唯一类别
categories = data.categories
print(categories)
804-6-3、结果输出
# 804、pandas.Categorical.categories属性
# Index(['a', 'b', 'c'], dtype='object')
805、pandas.Categorical.ordered属性
805-1、语法
# 805、pandas.Categorical.ordered属性
property Categorical.ordered
Whether the categories have an ordered relationship.
805-2、参数
无
805-3、功能
用来指示是否将类别视为有序(即有顺序的分类)或无序(即没有顺序的分类)。
- 如果ordered=True,则表示分类具有一定的顺序,例如“低”、“中”、“高”。
- 如果ordered=False,则表示分类之间没有顺序关系,例如“红色”、“蓝色”、“绿色”。
805-4、返回值
创建Categorical对象时,如果将ordered设置为True,则返回的对象将允许进行一些顺序相关的操作,比如比较、排序等,这种情况下,可以使用Categorical的内置方法进行排序和比较。
805-5、说明
无
805-6、用法
805-6-1、数据准备
无
805-6-2、代码示例
# 805、pandas.Categorical.ordered属性
import pandas as pd
# 创建一个无序的分类数据
cat_unordered = pd.Categorical(['apple', 'banana', 'orange'], ordered=False)
print(cat_unordered)
# 创建一个有序的分类数据
cat_ordered = pd.Categorical(['low', 'medium', 'high'], ordered=True)
print(cat_ordered)
# 比较顺序
print(cat_ordered[1] > cat_ordered[0])
print(cat_ordered[0] < cat_ordered[2])
805-6-3、结果输出
# 805、pandas.Categorical.ordered属性
# ['apple', 'banana', 'orange']
# Categories (3, object): ['apple', 'banana', 'orange']
# ['low', 'medium', 'high']
# Categories (3, object): ['high' < 'low' < 'medium']
# True
# False
二、推荐阅读
1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页
相关文章:
Python酷库之旅-第三方库Pandas(174)
目录 一、用法精讲 801、pandas.Categorical类 801-1、语法 801-2、参数 801-3、功能 801-4、返回值 801-5、说明 801-6、用法 801-6-1、数据准备 801-6-2、代码示例 801-6-3、结果输出 802、pandas.Categorical.from_codes方法 802-1、语法 802-2、参数 802-3、…...
【Linux网络】基于TCP的全连接队列与文件、套接字、内核之间的关系
W...Y的主页 😊 代码仓库管理💕 前言:之前我们已经学习了TCP传输协议,而无论是TCP还是UDP都是使用socket套接字进行网络传输的,而TCP的socket是比UDP复杂的,当时我们学习TCPsocket编程时使用listen函数进行…...
IDE(集成开发环境)
IDE(集成开发环境)是软件开发过程中不可或缺的工具,它集成了代码编写功能、分析功能、编译器、调试器等开发工具,旨在提高开发效率。不同的IDE支持不同的语言和框架,下面是一些通用的IDE使用技巧和插件推荐,…...
一键导入Excel到阿里云PolarDB-MySQL版
今天,我将分享如何一键导入Excel到阿里云PolarDB-MySQL版数据库。 准备数据 这里,我们准备了一张excel表格如下: 连接到阿里云PolarDB 打开的卢导表,点击新建连接-选择阿里云PolarDB-MySQL版。如果你还没有这个工具,…...
Oracle有哪些版本
目录 Oracle 1(1979年) Oracle 2(1983年) Oracle 7(1992年) Oracle 8i(1999年) Oracle 9i(2001年) Oracle 10g(2004年) Oracle 11g(2007年) Oracle 12c(2013年) Oracle 18c(2018年) Oracle 19c(2019年) Oracle 21c(2023年) Oracle 23ai(202…...
先来先服务(FCFS,First-Come, First-Served)调度算法
有利于CPU繁忙作业的原因 充分利用CPU资源: 当一个CPU繁忙型的作业到达后,它会立即被执行,并且在没有其他作业等待的情况下,可以一直占用CPU直到完成。这使得CPU能够持续地执行作业,最大化利用CPU资源。 减少上下文切换…...
Windows操作系统忘记密码怎么办 这个方法屡试不爽 还不来试一下
Windows操作系统重置密码的操作步骤如下: 本方法适用于Windows Server 2008R2及其之后的操作系统。 第一步:从Windows 2008R2之后的操作系统光盘启动到安装界面,一直下一步到磁盘分区界面,按shiftF10调出cmd命令行界面。 第二步&…...
基于java的山区环境监督管理系统(源码+定制+开发)环境数据可视化、环境数据监测、 环境保护管理 、污染防治监测系统 大数据分析
博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…...
jQuery Mobile 表单输入
jQuery Mobile 表单输入 引言 在移动设备上,表单输入是用户与移动应用交互的重要方式。jQuery Mobile 是一个基于 jQuery 的移动设备友好的开发框架,它提供了丰富的组件和工具来帮助开发者创建响应式和交互式的移动界面。本文将详细介绍如何使用 jQuery Mobile 来创建和定制…...
IoC详解
共有两类注解类型可以实现: 1. 类注解:Controller、Service、Repository、Component、Configuration. 2. 方法注解:Bean. 类注解 Controller(控制器存储) 使⽤Controller存储bean的代码如下所⽰: Con…...
基于 ThinkPHP+Mysql 灵活用工_灵活用工系统_灵活用工平台
基于 ThinkPHPMysql 灵活用工灵活用工平台灵活用工系统灵活用工小程序灵活用工源码灵活用工系统源码 开发语言 ThinkPHPMysql 源码合作 提供完整源代码 软件界面展示 一、企业管理后台 二、运用管理平台 三、手机端...
etcd之etcd分布式锁及事务(四)
1、etcd分布式锁及事务 1.1 前言 分布式锁是控制分布式系统之间同步访问共享资源的一种方式。在分布式系统中,常常需要协调他们的动作。如 果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要…...
智慧旅游微信小程序平台
作者介绍:✌️大厂全栈码农|毕设实战开发,专注于大学生项目实战开发、讲解和毕业答疑辅导。 🍅获取源码联系方式请查看文末🍅 推荐订阅精彩专栏 👇🏻 避免错过下次更新 Springboot项目精选实战案例 更多项目…...
C++设计模式创建型模式———简单工厂模式、工厂方法模式、抽象工厂模式
文章目录 一、引言二、简单工厂模式三、工厂方法模式三、抽象工厂模式四、总结 一、引言 创建一个类对象的传统方式是使用关键字new , 因为用 new 创建的类对象是一个堆对象,可以实现多态。工厂模式通过把创建对象的代码包装起来,实现创建对…...
C++ 类与对象(中) 默认成员函数
我们知道在类中,有成员变量和成员函数,我们可以通过创造不同的成员函数来实现这个类不同的功能,如果我们创造一个类,却不实现它的成员函数会如何呢?这个就涉及到类中的默认成员函数的概念了。但在本文我们主要介绍以下…...
中间人攻击(https降级攻击)和iptables命令分析
中间人攻击 以下是一个简单的中间人攻击示例,结合 ARP 欺骗和流量修改: 1. 进行 ARP 欺骗 首先,使用 arpspoof 进行 ARP 欺骗,将受害者的流量重定向到攻击者的机器上: sudo arpspoof -i eth0 -t 172.29.144.50 172…...
开源生活-分布式管理
开源竞争(当自己没有办法彻底掌握一门技术的时候就彻底开源掉;培养出更多的依赖,让更多人帮助你完善你的技术,那么这不就是在砸罐子吗?一个行业里面总会有人先砸罐子的,你不如先砸罐子,还能听个…...
华为OD机试真题- 关联子串
该专栏题目包含两部分: 100 分值部分题目 200 分值部分题目 所有题目都会陆续更新,订阅防丢失 题目描述: 给定两个字符串str1和str2,如果字符串str1中的字符,经过排列组合后的字符串中,只要有一个字符串是…...
云智慧完成华为原生鸿蒙系统的适配, 透视宝 APM 为用户体验保驾护航
2024 年 10 月 22 日,首个国产移动操作系统 —— 华为原生鸿蒙操作系统 HarmonyOS NEXT 正式面世,成为继 iOS 和 Android 后的全球第三大移动操作系统。HarmonyOS NEXT,从系统内核、数据库根基,到编程语言创新、AI(人工…...
QT 多语言转换 ts、qm
QT开发之路 企业级开发系列文章,主要目标快速学习、完善、提升 相关技能 高效完成企业级项目开发 分享在企业中积累的实用技能和经验。 通过具体的编码过程、代码示例、步骤详解、核心内容和展示的方法解决遇到的实际问题。 阅读前声明 本系列文章属于付费内容 禁止…...
C++学习:类和对象(二)
一、默认成员函数 1. 什么是默认成员函数? 在C中,每个类都有一些特殊的成员函数,如果程序员没有显式地声明,编译器会自动为类生成这些函数,这些函数称为默认成员函数 2. 默认成员函数列表 默认构造函数(…...
深度学习(五):语音处理领域的创新引擎(5/10)
一、深度学习在语音处理中的崛起 在语音处理领域,传统方法如谱减法、维纳滤波等在处理复杂语音信号时存在诸多局限性。这些方法通常假设噪声是平稳的,但实际噪声往往是非平稳的,导致噪声估计不准确。同时,为了去除噪声࿰…...
双曲函数(Hyperbolic functuons)公式
在python等语言里有双曲函数库和反双曲函数库,但是并没有包含所有的双曲函数。以numpy为例子,numpy只提供了sinh、cosh、tanh、arcsinh、arccosh、arctanh六种函数,那么其余的就需要用公式计算了。 转换公式 对于函数库不能直接计算的&#…...
【CSS/SCSS】@layer的介绍及使用方法
目录 基本用法layer 的作用与优点分离样式职责,增强代码可读性和可维护性防止无意的样式冲突精确控制样式的逐层覆盖提高复用性 兼容性实际示例:使用 import 管理加载顺序实际示例:混入与 layer 结合使用 layer 是 CSS 中用于组织和管理样式优…...
我为什么投身于青少年AI编程?——打造生态圈(三)
第五部分 青少年AI编程生态圈 一、生态圈 主要涵盖家庭、社区/中小学、高校高职、主管部门。 1、家庭 我们与社区/中小学一道打造让家长满意的模式。 教得好: 费用少: 家门口: 2、社区/中小学 社区党群服务中心和中小学都有大面积科普…...
出海要深潜,中国手机闯关全球化有了新标杆
经济全球化的大势之下,中国科技企业开拓海外市场已成为一种必然选择。 对于国内手机企业来说,推进全球商业版图扩张,业务潜力巨大,海外市场是今后的关键增长引擎。 当前中国手机厂商在海外市场的发展,有收获也有坎坷…...
百度SEO中的关键词密度与内容优化研究【百度SEO专家】
大家好,我是百度SEO专家(林汉文),在百度SEO优化中,关键词密度和关键词内容的优化对提升页面排名至关重要。关键词的合理布局与内容的质量是确保网页在百度搜索结果中脱颖而出的关键因素。下面我们将从关键词密度和关键…...
如何用fastapi集成pdf.js 的viewer.html ,并支持 mjs
fastapi 框架 集成pdf.js 的 viewer.html?file=***,支持跨域,支持.mjs .wasm .pdf 给出完整示例代码 要在 FastAPI 框架中集成 pdf.js 的 viewer.html,并支持跨域访问以及 .mjs、.wasm、.pdf 文件的正确加载,可以按照以下步骤进行。下面提供一个完整的示例,包括项目结构…...
文件相对路径与绝对路径
前言: 在写代码绘制图像的过程中,发现出现cant read input file的异常,而且输出框没有绘制图片,所以寻找解决方案。先贴上之前写的简洁版绘制图像代码 1.BackGround类 import java.awt.image.BufferedImage;public class BackG…...
Linux 重启命令全解析:深入理解与应用指南
Linux 重启命令全解析:深入理解与应用指南 在 Linux 系统中,掌握正确的重启命令是确保系统稳定运行和进行必要维护的关键技能。本文将深入解析 Linux 中常见的重启命令,包括功能、用法、适用场景及注意事项。 一、reboot 命令 功能简介 re…...
做户外运动的网站/最新的网络营销方式
有价值的git命令的博客: http://blog.csdn.net/ithomer/article/details/7529022 gitlab的使用方法: git命令: 1. 如果你是第一次使用git,那么先安装git吧: sudo apt-get install git2. 当安装完了 git 后,初始化…...
网站开发形式/公司怎么建立自己的网站
just type open . 转载于:https://www.cnblogs.com/maozhige/p/3804525.html...
怎样给公司产品做网站/百度一下 官方网
Java运算符 优先级 运算符的优先级决定了存在多个运算符时一个表达式各部分的运算顺序。Java 对运算顺序作出了特别的规定。其中,最简单的规则就是乘法和除法在加法和减法之前完成。程序员经常都会忘记其他优先级规则,所以应该用括号明确规定运算顺序。…...
怎么做淘宝店网站收录/免费开发软件制作平台
大数组的排序 之前有一个同事问我,如何对一个非常大的数组进行排序,最开始的思路是:化整为零 合并排序。但实际上具体的一些细节还是有待商榷,因此 这里写一篇文章来具体来总结一下。 问题 假如一个数组中有1亿个数字,那么要对这个数组从小到大进行排序,我们该如何操作&#…...
星巴克网站建设/什么网站可以发布广告
一.数组概念 数组是指一组数据的集合,其中的每个数据被称作元素,在数组中可以存放任意类型的元素。数组是一种将一组数据存储在单个变量名下的优雅方式。 二.创建数组 1.JS中创建数组有两种方式∶ 利用new创建数组这种方式暂且了解,等学完…...
紧急通知界面访问升级中狼人/seo流量优化
描述 给一组整数,问能找出多少对整数,他们的和大于一个给定的目标值。 使用 O(1) 的额外空间和 O(nlogn) 的时间。 您在真实的面试中是否遇到过这个题? 是 样例 对于 numbers [2, 7, 11, 15], target 24 的情况,返回 1。因…...