拿捏!相关性分析,一键出图!皮尔逊、斯皮尔曼、肯德尔、最大互信息系数(MIC)、滞后相关性分析,直接运行!独家可视化程序!

本文主要是介绍拿捏!相关性分析,一键出图!皮尔逊、斯皮尔曼、肯德尔、最大互信息系数(MIC)、滞后相关性分析,直接运行!独家可视化程序!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

适用平台:Matlab2020及以上

相关性分析是一种统计方法,用于衡量两个或多个变量之间的关系程度。通过相关性分析,我们可以了解变量之间的相互关系、依赖性,以及它们是如何随着彼此的变化而变化的。相关性分析通常包括计算相关系数或其他衡量关联度的指标。

①量化特征之间的关联程度:通过相关系数的值,我们可以判断它们的关系是强烈的、中等还是弱。

②特征降维:在大规模数据集中,相关性分析可以帮助我们过滤掉与目标序列关系较弱的变量,从而聚焦于关键的特征。

降维的方法:皮尔逊(Pearson)、斯皮尔曼(Spearman)、肯德尔(Kendall)、最大互信息系数(MIC)、滞后相关性。分别绘制出相关性矩阵,并且矩阵中每个值我们都用饼图表示,看着更加高大上!加深审稿人对文章的好感。

下面分别介绍这几种相关性分析的特点:

皮尔逊相关系数:皮尔逊相关系数衡量的是两个变量之间的线性关系。它通过计算协方差和两个变量的标准差来完成。皮尔逊相关系数在处理线性关系强的数据时非常有效,取值范围在 -1 到 1 之间,正值表示正相关,负值表示负相关,0 表示无关。

斯皮尔曼相关系数:斯皮尔曼相关系数是一种基于秩次的非参数方法,用于衡量两个变量之间的单调关系。首先将变量的原始数据转化为秩次,然后计算秩次的皮尔逊相关系数。适用于非线性关系,对异常值不敏感,取值范围也在 -1 到 1 之间。

肯德尔相关系数:计算过程类似斯皮尔曼相关系数,肯德尔相关系数也是基于秩次的非参数方法。它测量的是两个变量的等级之间的一致性程度,而不是直接测量它们的秩次之间的线性关系。适用于非线性关系,对异常值不敏感,常用于秩次数据的相关性分析。

最大互信息系数(MIC):最大互信息系数是一种非参数方法,用于测量两个变量之间的非线性关系。它通过将数据空间划分为网格,并计算每个网格中的互信息来完成。对于非线性关系的探测性能较好,但计算较复杂。

滞后相关性:滞后相关性衡量的是两个变量之间在时间上的延迟关系。通过计算变量在不同时间点上的相关性来确定它们是否存在滞后关系。适用于时间序列数据,能够揭示时间上的因果关系。

总结:上述方法都有其适用的场景和局限性。选择哪种方法取决于你们的数据特点以及你的侧重点问题。线性相关性可以使用皮尔逊相关系数,非线性或秩次相关性可以考虑斯皮尔曼和肯德尔相关系数。滞后相关性适用于时间序列数据,而MIC较适合处理非线性关系。

部分代码:

%% 计算互相关系数(滞后相关性)% 来自公众号《创新优化及预测代码》
n2=10; %滞后时序
y=data(:,end);
x=data(:,1:end-1);
%计算x在滞后或超前0-10个时段下与y的相关性
for i=1:size(x,2)croc(:,i)=crosscorr(y,x(:,i),'NumLags',n2);
end
croc=croc';% croc中行表示变量,列表述滞后序列-n2,-n2+1,...,0,1,...,n2-1,n2 下的x与y的相关系数%% 绘制热力图
[N, D]=size(data);%% 皮尔逊相关系数 % 来自公众号《创新优化及预测代码》
% 绘制皮尔逊相关系数二维图,使用hsv颜色映射
figure;
imagesc(pearson_corr);
colorbar;
% 颜色映射
color = hsv(200);
colormap(color(30:end-30,:));
title('皮尔逊相关系数');
xlabel('特征');
ylabel('特征');% 在图中添加皮尔逊相关系数的标签
for i = 1:size(pearson_corr, 1)for j = 1:size(pearson_corr, 2)text(j, i, num2str(pearson_corr(i, j), '%.2f'), 'Color', 'k', 'HorizontalAlignment', 'center', 'VerticalAlignment', 'middle');end
end% 饼图 % 来自公众号《创新优化及预测代码》
pieplot(pearson_corr);
colormap(color(30:end-30,:));%% 绘制肯德尔相关系数二维图,使用Jet颜色映射 % 来自公众号《创新优化及预测代码》
figure;
imagesc(kendall_corr);
colorbar;
color = jet(200);
colormap(color(60:end-50,:));
title('肯德尔相关系数');
xlabel('特征');
ylabel('特征');% 在图中添加肯德尔相关系数的标签
for i = 1:size(kendall_corr, 1)for j = 1:size(kendall_corr, 2)text(j, i, num2str(kendall_corr(i, j), '%.2f'), 'Color', 'k', 'HorizontalAlignment', 'center', 'VerticalAlignment', 'middle');end
end% 饼图
pieplot(kendall_corr);
colormap(color(60:end-50,:));

这篇关于拿捏!相关性分析,一键出图!皮尔逊、斯皮尔曼、肯德尔、最大互信息系数(MIC)、滞后相关性分析,直接运行!独家可视化程序!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/631033

相关文章

Redis主从/哨兵机制原理分析

《Redis主从/哨兵机制原理分析》本文介绍了Redis的主从复制和哨兵机制,主从复制实现了数据的热备份和负载均衡,而哨兵机制可以监控Redis集群,实现自动故障转移,哨兵机制通过监控、下线、选举和故... 目录一、主从复制1.1 什么是主从复制1.2 主从复制的作用1.3 主从复制原理1.3.1 全量复制

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用

Redis主从复制的原理分析

《Redis主从复制的原理分析》Redis主从复制通过将数据镜像到多个从节点,实现高可用性和扩展性,主从复制包括初次全量同步和增量同步两个阶段,为优化复制性能,可以采用AOF持久化、调整复制超时时间、... 目录Redis主从复制的原理主从复制概述配置主从复制数据同步过程复制一致性与延迟故障转移机制监控与维

Redis连接失败:客户端IP不在白名单中的问题分析与解决方案

《Redis连接失败:客户端IP不在白名单中的问题分析与解决方案》在现代分布式系统中,Redis作为一种高性能的内存数据库,被广泛应用于缓存、消息队列、会话存储等场景,然而,在实际使用过程中,我们可能... 目录一、问题背景二、错误分析1. 错误信息解读2. 根本原因三、解决方案1. 将客户端IP添加到Re

Redis主从复制实现原理分析

《Redis主从复制实现原理分析》Redis主从复制通过Sync和CommandPropagate阶段实现数据同步,2.8版本后引入Psync指令,根据复制偏移量进行全量或部分同步,优化了数据传输效率... 目录Redis主DodMIK从复制实现原理实现原理Psync: 2.8版本后总结Redis主从复制实

Linux使用nohup命令在后台运行脚本

《Linux使用nohup命令在后台运行脚本》在Linux或类Unix系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台... 目录nohup 命令简介基本用法输出重定向& 符号的作用后台进程的特点注意事项实际应用场景长时间运行的任务服

如何在一台服务器上使用docker运行kafka集群

《如何在一台服务器上使用docker运行kafka集群》文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本... 目录1.拉取镜像2.创建集群之间通信的网络3.将zookeeper加入到网络中4.启动kafka集群

锐捷和腾达哪个好? 两个品牌路由器对比分析

《锐捷和腾达哪个好?两个品牌路由器对比分析》在选择路由器时,Tenda和锐捷都是备受关注的品牌,各自有独特的产品特点和市场定位,选择哪个品牌的路由器更合适,实际上取决于你的具体需求和使用场景,我们从... 在选购路由器时,锐捷和腾达都是市场上备受关注的品牌,但它们的定位和特点却有所不同。锐捷更偏向企业级和专

如何提高Redis服务器的最大打开文件数限制

《如何提高Redis服务器的最大打开文件数限制》文章讨论了如何提高Redis服务器的最大打开文件数限制,以支持高并发服务,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录如何提高Redis服务器的最大打开文件数限制问题诊断解决步骤1. 修改系统级别的限制2. 为Redis进程特别设置限制

Spring中Bean有关NullPointerException异常的原因分析

《Spring中Bean有关NullPointerException异常的原因分析》在Spring中使用@Autowired注解注入的bean不能在静态上下文中访问,否则会导致NullPointerE... 目录Spring中Bean有关NullPointerException异常的原因问题描述解决方案总结