从0开始学习R语言--Day39--Spearman 秩相关

在非参数统计中,不看数据的实际数值,单纯比较两组变量的值的排名是通用的基本方法,但在客观数据中,很多变量的关系都是非线性的,其他的方法不是对样本数据的大小和线性有要求,就是只能对比数据的差异性,而不能展示这种非线性的单调性,比如想知道练习时间与游戏段位的关系,虽然从结果上看是正相关,但在过程中的体现可能是进步速度非常快后趋于稳定,其他的函数方法会漏掉这种细节。

以下是一个例子:

set.seed(123)
# 生成数据:学习时间增加,成绩总体上升但非线性
Hours <- sort(runif(50, 1, 10))  # 1到10小时,均匀分布
Score <- 50 + 10 * sqrt(Hours) + rnorm(50, 0, 5)  # 非线性关系+噪声# 构建数据框
df <- data.frame(Hours, Score)
head(df)# 方法1:直接使用cor.test()
result <- cor.test(df$Hours, df$Score, method = "spearman")
print(result)# 方法2:手动计算(验证原理)
rank_Hours <- rank(df$Hours)
rank_Score <- rank(df$Score)
n <- nrow(df)
rho_manual <- 1 - (6 * sum((rank_Hours - rank_Score)^2)) / (n * (n^2 - 1))
cat("手动计算的Spearman rho:", rho_manual, "\n")library(ggplot2)
ggplot(df, aes(x = Hours, y = Score)) +geom_point() +geom_smooth(method = "lm", se = FALSE, color = "red") +  # 线性趋势线(对比用)labs(title = "学习时间与成绩的Spearman相关 (rho=0.72)")

输出:

	Spearman's rank correlation rhodata:  df$Hours and df$Score
S = 5248, p-value < 2.2e-16
alternative hypothesis: true rho is not equal to 0
sample estimates:rho 
0.7479952 手动计算的Spearman rho: 0.7479952 

从结果可以看到,结果显示0.748,属于正相关。而图像显示,如果用一般的方法,直接用线性函数去拟合,会忽略实际数据中弯曲的分布,即不知道数据在实际中的增长方向,会对后续数据的加工使用造成错觉。

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

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

相关文章

WSL - Linux 安装 Anaconda3-2025.06-0 详细教程 [WSL 分发版均适用]

一、检查系统状态 安装前先确认 WSL - Linxu 已正常启动&#xff08;比如 Ubuntu&#xff09;&#xff0c;网络连接稳定&#xff0c;并且系统磁盘有足够空间&#xff0c;一般建议预留至少 5GB 以上的可用空间&#xff0c;避免因空间不足导致安装失败。 二、下载安装包 Anacond…

热血三国建筑攻略表格

<!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>热血三国建筑攻略表格</title><style>…

SpringBoot+MySQL医院挂号系统源码

概述 基于SpringBootMySQL开发的医院挂号系统完整源码&#xff0c;该系统功能完善&#xff0c;包含从患者挂号到医生管理的全流程解决方案&#xff0c;采用主流技术栈开发&#xff0c;代码规范易于二次开发。 主要内容 系统包含完整的前后台功能模块&#xff1a; ​​前台功…

Linux系统之MySQL数据库基础

目录 一、概述 数据库概念 数据库的类型 关系型数据库模型 关系数据库相关概念 二、安装 1、mariadb安装 2、mysql安装 3、启动并开机自启 4、本地连接&#xff08;本地登录&#xff09; 三、mysqld数据库配置与命令 yum安装后生成的目录 mysqld服务器的启动脚本 …

MySQL--InnoDB存储引擎--页结构

目录 一、页的大小 二、页的分类 三、页头和页尾 3.1 页头--File Header 3.2 页尾--File Trailer 3.3 LSN 四、数据行 五、页中数据的查询 六、事务和索引在页中的记录 一、页的大小 前面介绍了每个数据页默认大小为16KB&#xff0c;是操作系统“数据块” 4KB 的整数倍…

卡车检测数据集-700张图片交通运输管理 智能监控系统 道路安全监测

跌倒检测数据集-4500张图片&#x1f4e6; 已发布目标检测数据集合集&#xff08;持续更新&#xff09;&#x1f69b; Deteccin de carpa 2 Computer Vision Project&#x1f4cc; 数据集概览包含类别&#x1f3af; 应用场景&#x1f5bc; 数据样本展示&#x1f527; 使用建议&a…

Python爬虫实战:研究pangu库相关技术

1. 引言 1.1 研究背景与意义 在数字化信息传播时代,中文文本排版质量直接影响信息传达效果。规范的排版要求中文与西文、数字间保持合理空格间距,但人工处理不仅效率低,且易出现一致性问题。随着互联网中文内容爆发式增长,传统人工排版已无法满足需求。Python 作为高效的…

day48-考试系统项目集群部署

1. ✅考试系统项目集群架构图负载均衡说明7层负载通过nginx对http请求进行转发&#xff08;uri,ua,类型&#xff09;4层负载对端口负载均衡&#xff08;后端&#xff09;2. &#x1f4dd;环境准备角色主机ip负载均衡lb01/lb02172.16.1.5/172.16.1.6前端web集群web01/web02172.1…

Redis+Caffeine双层缓存策略对比与实践指南

RedisCaffeine双层缓存策略对比与实践指南在高并发场景下&#xff0c;缓存是提升系统性能和并发处理能力的关键手段。常见的缓存方案包括远程缓存&#xff08;如Redis&#xff09;和本地缓存&#xff08;如Caffeine&#xff09;。单层缓存各有优劣&#xff0c;结合两者优势的双…

FastAPI+React19 ERP系统实战 第02期

一、搭建环境 1.1 创建Python虚拟环境 切换Python版本: pyenv local 3.12创建虚拟环境: python -m venv venv激活虚拟环境: venv\Scripts\activate1.2 安装FastAPI项目依赖 requirements.txt fastapi==0.109.1

百度AI文心大模型4.5系列开源模型评测,从安装部署到应用体验

2025年6月30日&#xff0c;百度突然宣布&#xff0c;将旗下最新的大语言模型文心大模型4.5&#xff08;ERNIE 4.5&#xff09;全系列开源&#xff0c;震动整个AI行业。百度在GitCode平台上开源了文心大模型4.5系列&#xff0c;包括ERNIE-4.5-VL-424B-A47B-Base-PT等多个型号。此…

windows安装maven环境

在maven官网下载安装包 https://maven.apache.org/download.cgi 下载完成后安装maven&#xff0c;一般下载编辑好的 创建个maven目录解压出来即可 配置环境变量 根据刚刚的安装路径&#xff0c;新建一个命名为MAVEN_HOME的系统变量 新建完成点开系统变量的Path项&#xff0c;…

MySQL(117)何进行数据库安全加密?

数据库安全加密是保护敏感数据免受未授权访问的重要手段。以下是一个详细深入的步骤&#xff0c;介绍如何进行数据库安全加密&#xff0c;包括数据传输加密和数据存储加密。 一. 数据传输加密 确保数据在传输过程中被加密&#xff0c;以防止中间人攻击。我们以MySQL为例&#x…

工程化实践——标准化Eslint、PrettierTS

前端工程化中的标准化工具&#xff08;如Prettier、ESLint、Husky等&#xff09;虽然大幅提升了开发效率和代码质量&#xff0c;但在实际使用中也存在一些限制和挑战。以下从工具特性、团队协作、开发体验等维度详细分析常见限制&#xff0c;并以Prettier为核心举例说明&#x…

应急响应靶场——web3 ——知攻善防实验室

前景需要&#xff1a; 小苕在省护值守中&#xff0c;在灵机一动情况下把设备停掉了&#xff0c;甲方问&#xff1a;为什么要停设备&#xff1f;小苕说&#xff1a;我第六感告诉我&#xff0c;这机器可能被黑了。这是他的服务器&#xff0c;请你找出以下内容作为通关条件&#…

Ubuntu:Tomcat里面的catalina.sh

认识catalina.sh 1 启动Tomcat catalina.sh start相当于startup.sh 2 停止Tomcat catalina.sh stop相当于shutdown.sh 3 前台运行Tomcat 一般用于调试 catalina.sh run4 Tomcat脚本 编辑如下脚本run_tomcat.sh 里面的一些HOME位置改成自己的 #!/bin/shWORKDIR$(cd $(dirname $0…

【机器学习深度学习】模型微调时的4大基础评估指标(1)

目录 前言&#xff1a;基础评估指标&#xff08;从 “对与错” 到 “准与全”&#xff09; 一、基础评估4大指标 二、类比理解 2.1 准确率&#xff08;Accuracy&#xff09;&#xff1a;整体对的比例 2.2 精确率&#xff08;Precision&#xff09;&#xff1a;你说是垃圾的…

关于 栈帧变化完整流程图(函数嵌套)

一、什么是栈帧&#xff08;Stack Frame&#xff09; 当一个函数被调用时&#xff0c;会在栈上开辟一段空间&#xff0c;叫做 栈帧。 每个栈帧保存了&#xff1a; 函数的参数 返回地址&#xff08;从哪里跳回来&#xff09; 上一个栈帧的栈底指针&#xff08;保存调用者的 E…

new与malloc[c++面试系列]

new与malloc的区别new顺从c的思想&#xff0c;在堆区申请一个对象&#xff0c;因此它会调用对象的构造函数进行初始化&#xff0c;它也应该调用构造函数&#xff1b;malloc在堆区申请一块空间&#xff0c;用于存放资源new无需指定对象大小&#xff0c;可以自动计算对象大小进行…

Go语言的sync.Once和sync.Cond

一.sync.OnceOnce&#xff08;单次执行&#xff09;用途&#xff1a;确保某个操作只执行一次&#xff08;如初始化配置&#xff09;核心方法&#xff1a;Do(f func())&#xff1a;保证 f只执行一次package mainimport ("fmt""sync" )var (config map[strin…