网站建设亮点/如何进行搜索引擎优化?
pandas.DataFrame 也有一个 mode() 方法。
以下面的 pandas.DataFrame 为例。
df = pd.DataFrame({‘col1’: [‘X’, ‘X’, ‘Y’, ‘X’],
‘col2’: [‘X’, ‘Y’, ‘Y’, ‘X’]},
index=[‘row1’, ‘row2’, ‘row3’, ‘row4’])
print(df)
col1 col2
row1 X X
row2 X Y
row3 Y Y
row4 X X
按列获取模式
从pandas.DataFrame调用mode()方法返回一个pandas.DataFrame,其元素默认为每一列的众数值。请注意,即使只有一种模式,也会返回一行的 pandas.DataFrame,如上面的 pandas.Series 示例所示。
如果模式数因列而异,则空白部分将成为缺失值 NaN。
print(df.mode())
col1 col2
0 X X
1 NaN Y
print(type(df.mode()))
<class ‘pandas.core.frame.DataFrame’>
可以通过count()方法获取每一列中模态值的个数,该方法统计的是不为缺失值NaN的元素个数。
print(df.mode().count())
col1 1
col2 2
dtype: int64
生成的 pandas.DataFrame 的第一行将是每列的模式(如果有多个,则为其中一个)。第一行可以通过iloc[0]获得。
04_Pandas获取和修改任意位置的值(at,iat,loc,iloc)
print(df.mode().iloc[0])
col1 X
col2 X
Name: 0, dtype: object
从pandas.DataFrame中调用mode()选择列可能会包含缺失值NaN,但是先选择列再调用mode()作为pandas.Series是不包含缺失值NaN的
print(df.mode()[‘col1’])
0 X
1 NaN
Name: col1, dtype: object
print(df[‘col1’].mode())
0 X
dtype: object
它可能不是很有用,但是如果你用 apply() 方法从每一列调用 mode() 并用 tolist() 列出它,也可以得到一个以列表(列表类型)作为元素的 pandas.Series。
l_mode = df.apply(lambda x: x.mode().tolist())
print(l_mode)
col1 [X]
col2 [X, Y]
dtype: object
print(l_mode.iat[1])
[‘X’, ‘Y’]
print(type(l_mode.iat[1]))
<class ‘list’>
print(l_mode.iat[1][1])
Y
print(type(l_mode.iat[1][1]))
此时,生成的 pandas.Series 的行名索引变成了原始 pandas.DataFrame 的列名。注意,如果原来的列名是数字,选择结果pandas.Series的值为[number]会报错,必须是iat[number]。例子中是字符串,所以[Number]没有问题。
每行获取模式
如果设置参数 axis=1,则可以获得每一行的模式。
print(df.mode(axis=1))
0 1
row1 X NaN
row2 X Y
row3 Y NaN
row4 X NaN
计数不是缺失值 NaN 的元素数量的 count() 方法也有一个参数轴。
print(df.mode(axis=1).count(axis=1))
row1 1
row2 2
row3 1
row4 1
dtype: int64
在 pandas 中,每一列都有一个类型 dtype,所以基本上假设每一列都排列了相同类型的数据。
因此,通常不需要获取每一行的众数,如果每一行排列的是同类数据,转置可能会更好。
df_t = df.T
print(df_t)
row1 row2 row3 row4
col1 X X Y X
col2 X Y Y X
print(df_t.mode())
row1 row2 row3 row4
0 X X Y X
1 NaN Y NaN NaN
获取模式的频率(出现次数)
可以使用 pandas.Series 的 value_counts() 方法获取模式的频率(出现次数)。
value_counts() 返回一个 pandas.Series,其唯一元素值为 index,其频率(出现次数)为 data。
默认情况下,pandas.Series 按出现的降序排序,因此 value_counts() 方法返回的 pandas.Series 中的第一个值是模式的频率。
print(df[‘col1’].value_counts())
X 3
Y 1
Name: col1, dtype: int64
print(df[‘col1’].value_counts().iat[0])
3
原始 pandas.Series 的元素成为生成的 pandas.Series 的索引。如果数值为index,则不能用[number]指定值(会报错),所以使用iat [number]严格指定。 (由于上面的例子是字符串,所以[number]是没有问题的)
使用 apply() 获取每列模式的频率。
print(df.apply(lambda x: x.value_counts().iat[0]))
col1 3
col2 2
dtype: int64
describe() 方法计算每一列的汇总统计信息,还获取众数及其频率。
print(df.describe())
col1 col2
count 4 4
unique 2 2
top X Y
freq 3 2
项目 top 是模式, freq 是它的频率。如果有多种模式,则只返回其中一种。结果是一个 pandas.DataFrame,因此您可以使用 loc、at 等获取行和元素。
print(df.describe().loc[‘freq’])
col1 3
col2 2
Name: freq, dtype: object
print(df.describe().at[‘freq’, ‘col2’])
2
describe() 没有参数轴,因此如果要将它应用于一条线,请在调用它之前转置它。
print(df.T.describe())
row1 row2 row3 row4
count 2 2 2 2
unique 1 2 1 1
top X Y Y X
freq 2 1 2 2
相关文章:

获取pandas中的众数
pandas.DataFrame 也有一个 mode() 方法。 以下面的 pandas.DataFrame 为例。 df pd.DataFrame({‘col1’: [‘X’, ‘X’, ‘Y’, ‘X’], ‘col2’: [‘X’, ‘Y’, ‘Y’, ‘X’]}, index[‘row1’, ‘row2’, ‘row3’, ‘row4’]) print(df) col1 col2 row1 X X row2…...

SOLIDWORKS Simulation2024仿真10大新功能
SOLIDWORKS Simulation新增功能 1. 增强型轴承接头 •通过指定压缩、拉伸和弯曲的刚度,轻松创建自定义轴承接头。•通过向非线性和大型位移算例添加自定义条件,提高模拟精度。 优点:使用功能强大的接口,更轻松 、 更 准 确 地 设…...

Java程序设计2023-第二次上机练习
这里要用到一些面向对象的基本知识 目录 7-1 伪随机数 输入格式: 输出格式: 输入样例: 输出样例: 7-2 jmu-Java-03面向对象基础-01-构造方法与toString 1.编写无参构造函数: 2.编写有参构造函数 3.覆盖toString函数: 4.对每个属性生成setter…...

如何在 uniapp 里面使用 pinia 数据持久化 (pinia-plugin-persistedstate)
想要在 uniapp 里面使用 pinia-plugin-persistedstate 会遇到的问题就是 uniapp里面没有浏览器里面的 sessionStorage localStorage 这些 api。 我们只需要替换掉 pinia-plugin-persistedstate 默认的储存 api 就可以了。使用 createPersistedState 重新创建一个实例, 把里面的…...

智慧矿山AI算法助力护帮板支护监测,提升安全与效率
在智慧矿山AI算法系列中,护帮板支护监测是保障矿山安全和提高生产效率的重要环节。护帮板作为矿山支护体系中的重要组成部分,在矿山生产中起到了关键的作用。那么,护帮板在哪种状态下是正常打开的呢?本文将对此进行介绍。 护帮板的…...

shell中的运算
目录 1.运算符号 2.运算指令 练习 1.运算符号 运算符号意义加法-减法*乘法/除法%除法后的余数**乘方自加一- -自减一<小于<小于等于>大于>大于等于等于ji ->jji*j*i->jj*i/j/i->jj/i%j%i->jj%i 2.运算指令 (()) //((a12))let //let a12 …...

【Java 进阶篇】解决Java Web应用中请求参数中文乱码问题
在Java Web应用开发中,处理请求参数时经常会遇到中文乱码的问题。当浏览器向服务器发送包含中文字符的请求参数时,如果不正确处理,可能会导致乱码问题,使得参数无法正确解析和显示。本文将详细探讨Java Web应用中请求参数中文乱码…...

51单片机-点阵屏led
代码配置 这样就能选择每一列哪个亮了 进行位选,段清零,这样就不会影响多列同时了 实现动画 1、使用文字摸提取文件,提取图案的16进制表示数组 offest作为偏移量,count作为计时。count10,偏移量加1,就相当于得到下一…...

Angular-03:组件模板
各种学习后的知识点整理归纳,非原创! 组件模板 ① 数据绑定② 属性绑定③ 类名绑定④ 样式绑定⑤ 事件绑定⑥ 获取原生DOM对象6.1 在组件模板中获取6.2 在组件类中获取 ⑦ 双向数据绑定⑧ 内容投影8.1 select选择器8.2 单槽投影8.3 多槽投影 ⑨ 安全操作…...

mysql 操作慢查询日志
1、mysql 批量插入300w数据 CREATE PROCEDURE test_insert_200w() BEGINDECLARE i INT;SET i1;WHILE i<3000000 DOINSERT INTO shop_user (password, telephone, username) VALUES (admin, 15510304125, concat(admin, i));SET ii1;END WHILE; END; //执行sql call test_in…...

illuminate/database 使用 二
上一篇文章写怎么单独使用illuminate/database,这回讲下怎么整合到项目里使用。为此特意看了下laravel对其使用。本篇文章,参照laravel的使用,简单实现。 一 原理 laravel 里使用illuminate/config。 illuminate/config composer 地址&…...

二叉树的概念
文章目录 二叉树一、树的概念1.树形结构1.1. 树的特点:1.2 概念:1.3 树的表示形式 2.树的应用 二、二叉树1.二叉数的概念2.满二叉树3.完全二叉树4.二叉树的性质练习: 二叉树 一、树的概念 1.树形结构 1.1. 树的特点: 1.根节点没…...

SpringCloud之Eureka的学习【详细】
目录 服务架构演变 单体架构 分布式架构 分布式架构需要考虑的问题 微服务 架构比较 微服务技术对比 服务拆分注意事项 案例 服务远程调用 RestTemplate Eureka注册中心 RestTemplate存在的问题 服务调用考虑的问题 Eureka的作用 搭建EurekaServer 服务注册 …...

学习ftp
文章目录 一、FTP介绍二、两种模式(主动模式和被动模式)三、FTP配置文件详解四、实际场景举例五、黑白名单六、网络限制 一、FTP介绍 1.FTP(File Transfer Protocol)是一种应用广泛且古老的互联网文件传输协议。 2.主要应用于互联…...

Android笔记(九):Compose组件的状态(一)
在使用Compose定义UI界面时,可以发现界面的变换往往与Compose组件内部的状态相关,当状态值发生变化时,Compose构成的可组合的界面也会刷新发生相应的变化。将在本笔记中将对可组合项的状态的定义、状态提升、状态丢失和状态的保存进行简单介绍…...

3.2. onnx export multi_batch
前言 将onnx bs=1 修改为多batch操作 参考链接: https://www.cnblogs.com/tangjunjun/p/16500116.html https://blog.csdn.net/weixin_43863869/article/details/128638397?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault…...

探索低代码PaaS平台的优势与选择原因
PaaS是一种云产品,它为应用程序的开发和部署提供基础结构。它提供中间件、开发工具和人工智能来创建功能强大的应用程序,大多数PaaS服务都与存储和网络基础架构捆绑在一起,就像基础架构即服务(IaaS)一样,可…...

AD教程(一)工程组成及创建
AD教程(一)工程组成及创建 工程组成 原理图库 绘制电阻模型、芯片模型、电容模型等,即将元件模型绘制出来。 原理图 将绘制的原件模型放置到原理图中,然后再添加连接的导线、网络标号。器件和器件之间的连接关系,在原…...

SAP业务从ECC升级到SAP S/4HANA有哪些变化?有哪些功能得到增强?
SAP在2015年推出了新一代商务套件SAP S/4 HANA。 SAP S/4 HANA (全称SAP Business suite 4 SAP HANA),这款新产品完全构建于目前先进的内存平台SAP HANA 之上,同时采用现代设计理念,通过SAP Fiori 提供精彩的用户体验 (UX)。提供比ECC更强大的功能。S/4h…...

常用conda和pip命令总结
conda 环境相关命令 conda 新建环境命令 conda create -n env_name pythonx.xenv_name 是环境名,自己换成所要创建的虚拟环境的名字 pythonx.x 是版本号,比如3.7,3.8这样 查看conda环境下所有的虚拟环境 conda info -e conda env list两条…...

【计算机网络】路由器的工作原理
文章目录 输入端口处理和基于目的地转发交换结构输出端口处理排队问题参考资料 路由器的四个组件 输入端口(input port):执行物理层功能(input port 左边方框、output port 右边方框)、数据链路层功能(input/output port 中间方框…...

队列概念|循环队列的实现
前言 今天我们将学习循环队列实现,我们首先介绍队列的概念和结构,之后一步步讲解循环队列由来与实现。 一、队列的概念与结构 1、队列的概念 队列: 只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表。队列是…...

监控数据控中的数据表
背景: 在做一个项目的时候,每次代码分析的数据会写入到数据库,目前想实现当数据插入到数据库后,对新插入的数据进行监控解析。当有一个新纪录插入到数据表的时候,数据库可以自动解析新插入的数据记录。 思路如下&…...

进程替换..
1、单进程版 – 最简单的先看看程序替换 现象就是 1、我们用自己的进程封装了内置指令ls,并且代码中execl 后 printf 的after并没有打印出来。 2、谈进程替换的原理 单进程替换基本原理 上面例子中execl的做法非常简单粗暴,要调用ls,那么就把mycom…...

M1安装OpenPLC Editor
下载OpenPLC Editor for macOS.zip文件后,使用tar -zvxf命令解压,然后将"OpenPLC Editor"拖入到"应用程序"文件夹 右键点击"OpenPLC Editor",打开这个""文件,替换为以下内容 #!/bin/bash…...

STM32F10xx 存储器和总线架构
一、系统架构 在小容量、中容量和大容量产品 中,主系统由以下部分构成: 四个驱动单元 : Cotex-M3内核、DCode总线(D-bus)和系统总线(S-bus) 通用DMA1和通用DMA2 四个被动单元 内部SRAM 内部…...

并发编程
什么是并发编程? 并行:在同一个时间节点上,多个线程同时执行(是真正意义上的同时执行) 并发:一个时间段内,多个线程依次执行。 并发编程:在例如买票、抢购、秒杀等等场景下,有大量的请求访问…...

Lauterbach使用指南之RunTime功能
Lauterbach使用指南之RunTime功能 前言 首先,请问大家几个小小问题,你清楚: Lauterbach这个工具是干什么用的吗?在软件运行过程中如何测量两个运行point之间的runtime时间呢?Lauterbach的RunTime功能具体应当如何来操…...

GaussDB数据库管理系统介绍
1.GaussDB的发展 2.GaussDB的生态 内部: 云化自动化方案。通过数据库运行基础设施的云化将DBA(数据库管理员)和运维人员的日常工作 自动化。外部: 采用与数据库周边生态伙伴对接与认证的生态连接融合方案,解决开发者/DBA难获取、应用难对接等…...

使用docker部署lnmp多站点
1. 创建一个 Docker 网络 以便容器可以在同一网络上进行通信 docker network create lnmpnetwork2. 运行 MySQL 容器: 运行 MySQL 容器并将其连接到创建的网络。确保将 MySQL 的端口映射到宿主机上,以便您可以从宿主机访问数据库。 将mysql的配置和数…...