掌握Python Pingouin:数据统计新利器解析!

更多资料获取

📚 个人网站:ipengtao.com


Pingouin库基于pandas、scipy和statsmodels,为用户提供了执行常见统计分析的功能。它支持各种统计方法和假设检验,例如 t-tests、ANOVA、correlation analysis 等。让我们看一些示例代码,以更全面地了解如何使用Pingouin库进行统计分析。

安装Pingouin库

首先,确保已安装Pingouin库:

!pip install pingouin

示例1:独立样本t-检验

import pandas as pd
from pingouin import ttest# 创建示例数据集
data = pd.DataFrame({'Group': ['A'] * 20 + ['B'] * 20,'Values': list(range(20)) + list(range(10, 30))
})# 执行独立样本t-检验
ttest_result = ttest(data=data, dv='Values', between='Group')
print(ttest_result)

以上示例演示了如何使用Pingouin进行独立样本t-检验。首先,创建包含两个组的示例数据集。然后使用ttest()函数进行独立样本t-检验,指定数据、因变量和分组变量,并打印结果。

示例2:相关性分析

from pingouin import correlation# 创建包含两个变量的示例数据集
data = pd.DataFrame({'X': range(20),'Y': range(20) + [5, 9, 3, 6, 8, 4, 7, 2, 1, 0]
})# 计算Pearson相关系数和显著性
corr = correlation(data=data, x='X', y='Y', method='pearson')
print(corr)

这个示例展示了如何使用Pingouin执行Pearson相关性分析。创建一个包含两个变量的示例数据集,并使用correlation()函数计算了这两个变量之间的Pearson相关系数以及相关性的显著性。

示例3:双因素方差分析(ANOVA)

from pingouin import anova# 创建包含两个因素的示例数据集
data = pd.DataFrame({'Group': ['A'] * 20 + ['B'] * 20,'Values': list(range(20)) + list(range(10, 30)),'Category': ['X'] * 10 + ['Y'] * 10 + ['X'] * 10 + ['Y'] * 10
})# 执行双因素ANOVA
anova_result = anova(data=data, dv='Values', between='Group', detailed=True)
print(anova_result)

这个示例展示了如何使用Pingouin执行双因素方差分析(ANOVA)。创建一个包含两个因素的示例数据集,并使用anova()函数执行双因素ANOVA。指定数据、因变量、分组变量以及detailed=True以获取更详细的分析结果。

配对样本t-检验

from pingouin import ttest# 创建示例数据集
data = pd.DataFrame({'Before': [5, 7, 3, 6, 2],'After': [8, 9, 6, 10, 5]
})# 执行配对样本t-检验
paired_ttest_result = ttest(data=data, dv='Before', within='After', paired=True)
print(paired_ttest_result)

以上是如何使用Pingouin执行配对样本t-检验的示例。创建包含两列(前后两次观测)的示例数据集,并使用ttest()函数进行配对样本t-检验,指定数据、因变量和配对变量,并打印结果。

线性回归

from pingouin import linear_regression# 创建示例数据集
data = pd.DataFrame({'X': range(20),'Y': range(20) + [5, 9, 3, 6, 8, 4, 7, 2, 1, 0]
})# 执行线性回归
regression_result = linear_regression(data=data, x='X', y='Y')
print(regression_result)

上述代码展示了如何使用Pingouin进行线性回归。创建包含两个变量的示例数据集,并使用linear_regression()函数执行线性回归分析,计算回归系数、显著性等,并打印结果。

多因素方差分析(ANOVA)

from pingouin import anova# 创建包含多个因素的示例数据集
data = pd.DataFrame({'Group': ['A'] * 20 + ['B'] * 20,'Values': list(range(20)) + list(range(10, 30)),'Category': ['X'] * 10 + ['Y'] * 10 + ['X'] * 10 + ['Y'] * 10,'Color': ['Red'] * 20 + ['Blue'] * 20
})# 执行多因素ANOVA
multifactor_anova_result = anova(data=data, dv='Values', between=['Group', 'Color'], detailed=True)
print(multifactor_anova_result)

这个示例展示了如何使用Pingouin进行多因素方差分析(ANOVA)。创建一个包含多个因素的示例数据集,并使用anova()函数执行多因素ANOVA。在此例中,指定了数据、因变量、多个分组变量以及detailed=True以获取更详细的分析结果。

Pingouin库还有更多功能,如非参数检验、协方差分析等。这些功能为用户提供了丰富的统计分析工具,有助于深入了解数据和进行科学实验分析。


Python学习路线

在这里插入图片描述

更多资料获取

📚 个人网站:ipengtao.com

如果还想要领取更多更丰富的资料,可以点击文章下方名片,回复【优质资料】,即可获取 全方位学习资料包。

在这里插入图片描述
点击文章下方链接卡片,回复【优质资料】,可直接领取资料大礼包。

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

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

相关文章

请求函数的封装---工具函数

导出一个通用的请求工具函数,支持设置响应数据类型 支持不同接口设不同的响应数据的类型 import axios, { AxiosError, type Method } from axios// 4. 请求工具函数 const request (url: string, method: Method GET, submitData?: object) > {return insta…

【华为OD】静态扫描快速识别源代码的缺陷,静态扫描的结果以扫描报告作为输出

静态扫描快速识别源代码的缺陷,静态扫描的结果以扫描报告作为输出:1. 文件扫描的成本和文件大小相关,如果文件大小为 N ,则扫描成本为 N 个金币2. 扫描报告的缓存成本和文件大小无关,每缓存一个报告需要 M 个金币3. 扫描报告缓存后,后继再碰到该文件则不需要扫描成本,直…

初识MyBatis

1、什么是 MyBatis MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain O…

[LeetCode系列] 30天pandas挑战

很久没有写AI或者Python相关的代码,毕竟现在已经不是一个算法工程师了。所以就用白嫖版的leetcode练练手。 先丢个代码,再慢慢填坑把 import pandas as pd# 1.大的国家,选出面基至少为300万或者人口至少为2500万的国家 # 简单的pandas过滤 …

【数据结构与算法篇】一文详解数据结构之二叉树

树的介绍及二叉树的C实现 一 . 树的概念二 . 相关术语三 . 树的表示四 . 什么是二叉树1> 二叉树的特性2> 特殊的二叉树3> 二叉树的性质 五 . 二叉树的存储结构1> 二叉树的顺序存储2> 二叉树的链式存储 六 . 堆1> 什么是堆2> 用堆存储数据3> 堆的Cpp代码…

木马病毒是怎么进入服务器的,要如何防范

木马病毒通常是基于计算机网络,基于客户端和服务端的通信、监控程序。名称来源于公元前十二世纪希腊和特洛伊之间的一场战争。能够在计算机管理员未发觉的情况下开放系统权限、泄漏用户信息、甚至窃取整个计算机管理使用权限,隐匿性高。 木马病毒的入侵方…

【恋上数据结构】哈夫曼树学习笔记

哈夫曼树 哈夫曼编码(Huffman Coding) 哈夫曼编码,又称为霍夫曼编码,它是现代压缩算法的基础 假设要把字符串 [ABBBCCCCCCCCDDDDDDEE] 转成二进制编码进行传输。 可以转成 ASCII 编码 (6569,10000011000101) &…

Python脚本模拟真实设备刷视频播放量、浏览量

简述 Python3脚本刷视频播放量 前情提示 系统:centOS7,8阿里云一折优惠云小站_专享特惠_云产品推荐-阿里云 宝塔8.x 一说 部分截图、链接等因过期、更换域名、MD语法等可能不显示,可联系反馈(备注好博文地址),谢谢❤带有#号、删除线、不操作、不执行字样的为提示或者…

C++学习之路(十九)C++ 用Qt5实现一个工具箱(用SQLite数据库来管理粘贴板数据)- 示例代码拆分讲解

上篇文章,我们用 Qt5 实现了在小工具箱中添加了《点击按钮以新窗口打开功能面板》功能。今天我们把粘贴板功能用SQLite数据库来管理,用SQLite来实现增删改查。下面我们就来看看如何来规划开发这样的小功能并且添加到我们的工具箱中吧。 老规矩&#xff…

基于51单片机多功能时钟闹钟系统

**单片机设计介绍,基于51单片机多功能时钟闹钟系统 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于51单片机的多功能时钟闹钟系统是一种基于单片机的电子设备,能够显示时间、设置闹钟、进行计时以及提…

随机链表的复制[中等]

优质博文:IT-BLOG-CN 一、题目 给你一个长度为n的链表,每个节点包含一个额外增加的随机指针random,该指针可以指向链表中的任何节点或空节点。构造这个链表的深拷贝。深拷贝应该正好由n个全新节点组成,其中每个新节点的值都设为…

sip 用户名密码注册通信流程

SIP(Session Initiation Protocol)用户注册的通信流程涉及客户端向SIP服务器注册,并在需要时进行身份验证。以下是基本的SIP注册通信流程,其中包含了用户名密码的注册和身份验证: 1. SIP REGISTER 请求: - 客户端&…

Java File类详解(中)

File的常见成员方法 判断、获取相关的方法 方法名称 说明 public boolean isDirectory() 判断此路径名表示的File是否为文件夹 public boolean isFile() 判断此路径名表示的File是否为文件 public boolean exists() 判断此路径名表示的File是否存在 public long lengt…

在 CentOS 7 上使用 `redis` 用户安装 Redis 7.2.3 的完整步骤

在 CentOS 7 上使用 redis 用户安装 Redis 7.2.3 的完整步骤如下: 安装依赖:首先,您需要安装一些必要的软件包,以编译和运行 Redis。打开终端并执行以下命令: sudo yum install gcc make创建 Redis 用户:为…

Hadoop学习笔记(HDP)-Part.18 安装Flink

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

查看Linux服务器的CPU利用率常用的命令

查看Linux服务器的CPU利用率常用的命令 在Linux服务器上,可以使用多种命令来查看CPU的利用率。以下是一些常用的命令: 1 top命令: top 命令是一个实时的系统监视器,可以显示当前系统的 CPU 利用率、内存利用率、进程信息等。在…

sort by modulus of a complex number

描述 复数E包含实部x和虚部y, Exyi;E的模为: 输入n(<1000)和n对(x,y); 按模数升序对复合体进行排序&#xff0c;如果模数相等&#xff0c;则按输入顺序排序。 排序后输出n行of (x_i,y_i,mod_i)&#xff0c;保留2个十进制小数。 输入 输入n和n对(x,y); 输出 输出排序后的n行(…

驱动模块--内核模块

内核模块宏都有什么&#xff0c;分别有什么作用&#xff1f; 1.__init的作用: 展开后为&#xff1a;__attribute__((__section_(".init.text")))实际是gcc的一个特殊链接标记 指示链接器将该函数放置在.init.text区段&#xff0c;在模块插入时方便内核从ko文件指定位…

P=NP?

背景&#xff1a;   2000年5月24日&#xff0c;新罕布什尔州的克莱数学研究所列出了数学和计算机科学中七个未解决的问题。然而&#xff0c;直到今天&#xff0c;这些问题中只有一个被解决了&#xff0c;那就是庞加莱猜想&#xff08;Poincar Conjecture&#xff09;——被俄…

前端】全局替换(replace//g)

//比如\ [] " 以[]为例 var ch"微笑"; var str"[微笑]我是小仙女&#xff01;[微笑]我是小仙女&#xff01;";alert(str.replace(ch,"哈")); //输出 哈我是小仙女&#xff01;[微笑]我是小仙女&#xff01;var encodeeval("/"&q…