相关性分析:皮尔逊相关系数——python实现Pearson correlation coefficient
一、理论知识:
要理解 Pearson 相关系数,首先要理解协方差(Covariance)。协方差表示两个变量 X,Y 间相互关系的数字特征,其计算公式为:
当 Y = X 时,即与方差相同。当变量 X,Y 的变化趋势一致时,如果某个 Xi 大于 X¯,相应的 Yi 也大于 Y¯;如果某个 Xi小于 X¯,相应的 Yi 也小于¯Y¯,那么 COV(X,Y)COV(X,Y) 就是正值,当变量 X,Y 的变化趋势相反时,那么 COV(X,Y)COV(X,Y) 就是负值。
Pearson 相关系数公式如下:
由公式可知,Pearson 相关系数是用协方差除以两个变量的标准差得到的,虽然协方差能反映两个随机变量的相关程度(协方差大于0的时候表示两者正相关,小于0的时候表示两者负相关),但其数值上受量纲的影响很大,不能简单地从协方差的数值大小给出变量相关程度的判断。为了消除这种量纲的影响,于是就有了相关系数的概念。
当相关系数为1时,成为完全正相关;当相关系数为-1时,成为完全负相关;相关系数的绝对值越大,相关性越强;相关系数越接近于0,相关度越弱。
二、函数:Pearsonr(x,y)
1)输入:x为特征,y为目标变量.
2)输出:r: 相关系数 [-1,1]之间,p-value: p值。
注: p值越小,表示相关系数越显著,一般p值在500个样本以上时有较高的可靠性。
三、python实现Pearson correlation coefficient
############导包#################
import numpy as np
from scipy.stats import pearsonr
import csv
############导入数据#############
Housing_dataset = np.loadtxt('./dataset/Housing_dataset03.csv',delimiter=",",skiprows=1)
############切分数据#############
X = Housing_dataset[:,1:-1]
y = Housing_dataset[:,-1:]
print(X.shape)
print(y.shape)
#############Pearsonr分析#########
for i in range(0,13,1):x = X[:,i].reshape(-1,1)print(x.shape)#------------pearsonr(x,y)-------------result = pearsonr(x,y) #------------保存结果--------------------with open('./dataset/Pearsonr_dataset03.csv','a+',encoding='GB18030',newline="")as file_write:result_writer = csv.writer(file_write)result_writer.writerow(result)
Reference:
https://blog.csdn.net/huangfei711/article/details/78456165
https://blog.csdn.net/zhouwenyuan1015/article/details/65938847
相关性分析:皮尔逊相关系数——python实现Pearson correlation coefficient相关推荐
- Python--如何计算皮尔逊相关系数(Pearson correlation coefficient)
皮尔逊系数 在统计学中,皮尔逊相关系数( Pearson correlation coefficient),又称皮尔逊积矩相关系数(Pearson product-moment correlation ...
- 皮尔逊相关系数 Pearson correlation coefficient
在统计学中,皮尔逊相关系数( Pearson correlation coefficient),又称皮尔逊积矩相关系数(Pearson product-moment correlation coeff ...
- ML之PPMCC:PPMCC皮尔逊相关系数(Pearson correlation coefficient)、Spearman相关系数的简介、案例应用之详细攻略
ML之PPMCC:PPMCC皮尔逊相关系数(Pearson correlation coefficient).Spearman相关系数的简介.案例应用之详细攻略 目录 PPMCC皮尔逊相关系数的简介 ...
- 皮尔逊相关系数(Pearson Correlation Coefficient, Pearson's r)
Pearson's r,称为皮尔逊相关系数(Pearson correlation coefficient),用来反映两个随机变量之间的线性相关程度. 用于总体(population)时记作ρ (rh ...
- ML之FE:PCC皮尔逊相关系数(Pearson correlation coefficient)的简介、案例应用(与spearman相关系数对比及其代码实现)之详细攻略
ML之FE:PCC皮尔逊相关系数(Pearson correlation coefficient)的简介.案例应用(与spearman相关系数对比及其代码实现)之详细攻略 目录 PCC/PPMCC皮尔 ...
- python相关性分析模型,相关性分析原理及Python实战
本文阅读时间大概在8分钟. 相关性分析 我们常说的相关性分析是分析两个变量之间线性相关程度的方法,其相关性强度的度量即为相关性系数.现实中很多事物间都拥有或多或少的相关性,例如,房屋面积对价格的影响, ...
- 皮尔逊相关系数python实现
一.皮尔逊相关系数 常见公式: 公式转换: 具体和皮尔逊相关系数相关的内容可以看之前的一篇文章. 相似度计算(2)--皮尔逊相关系数 二.python实现 方法1:直接按公式算 import nump ...
- Spearman 相关性分析法,以及python的完整代码应用
Spearman 相关性分析法 简介 Spearman 相关性分析法是一种针对两个变量之间非线性关系的相关性计算方法,同时,它不对数据的分布进行假设.该方法的基本思想是将两个(也可以多个)变量的值进行 ...
- 皮尔森(Pearson correlation coefficient)相关系数—统计学三大相关系数之一
概述 皮尔森相关系数也称皮尔森积矩相关系数(Pearson product-moment correlation coefficient) ,是一种线性相关系数,是最常用的一种相关系数.记为r,用来反 ...
最新文章
- 微软语音扩展全球语言支持,发布160个新声音
- 教你轻松将springboot打包成exe程序
- java二维数组矩阵_java使用二维数组开发五子棋
- get占位符传多个参数_未知环境下的Lidar概率占位栅格图(Occupancy Grid Map) Python代码实现...
- 案例 | 用pdpipe搭建pandas数据分析流水线
- OSTimeDlyResume()--恢复一个延迟任务(取消任务延时)
- Linux系统如何安装VMware(虚拟机)
- python如何获取javascript动态产生的数据
- Oracle exists与not exists的用法总结
- HAWQ取代传统数仓实践(一)——为什么选择HAWQ
- 计算机网络期末复习要点(谢希仁第8版)抱佛脚通用
- 第6节 蒙特卡罗模拟计算欧式期权价格
- 春节假期,把“电影院”搬回家,泰捷WEBOX T1S 投影仪全面评测
- 基金账户与基金交易账户
- 玛雅日历和2012年12月,whats的新政
- Heka nginx input
- Hive的行列转换(行转多列、多列转行、行转单列、单列转行)
- Python 支付宝红包二维码制作步骤分享
- 使用夜神模拟器进行Android开发调试
- 最新IP地址数据库 全球IP数据库 国内IP数据库 国外IP数据库 CIDR掩码 2018年1月版...