(9)数据分析-相关性分析

人工智能40

文章目录

1、运用场景

相关性分析是研究两个或两个以上随机变量间相关关系的统计方法。在数据分析中,它常用于分析连续型自变量X与连续型因变量Y之间的关系。在待分析特征较少时,可使用做图法分析,特征较多时,可使用皮尔森或者斯皮尔曼等工具分析,这这些只能判断线性关系,如果要判断非线性关系,则可将连续数组分组以后使用方差分析对比各组之间的差异。

2、图形描述相关性

2.1使用场景

待分析的特征较少
散点图是在两变量相关性分析分析时最常用的展示方法。如下图所示。(9)数据分析-相关性分析

本文使用Statsmodels 自带的 ccard数据集, 展示其中的INCOMESQ与IMCOME两个变量的相关性

2.2 代码实现

import pandas as pd
from scipy import stats
import matplotlib.pyplot as plt
from statsmodels.datasets import ccard

data = ccard.load_pandas().data
print(data)
plt.scatter(data['INCOMESQ'],data['INCOME'])
plt.grid()
plt.show()

2.3 效果呈现

(9)数据分析-相关性分析

; 3、正态资料相关性分析

3.1 使用场景

待分析特征较多。可用它来分析 正态分布的两个连续型变量之间的相关性,常用于分析自变量之间,以及自变量与因变量之间的相关性。

3.2 皮尔森相关系数

皮尔森相关系数是反应两个变量之间线性相关程度的统计量。

3.3 代码实现

import numpy as np

a = np.random.normal(0,1,100)
b = np.random.normal(2,2,100)
print(stats.pearsonr(a,b))

3.4 结果分析

  • ret1:相关系数,其取值范围为[-1,1]。其值接近于1,正相关正读越强,接近于-1,负相关性越强,接近于0,相关性弱。
  • ret2:p-value:皮尔森相关系数原假设为两组数据不存在相关性。p-value >0.05 接受原假设。

4、非正太资料的相关分析

4.1 使用场景

待分析特征较多,只考虑从变量值的顺序(rank,秩或称等级),而不考虑变量值的大小,常用于计算有序的类型变量的相关性。可以用于 非正太变量的相关性检验,但是它只考虑数据大小的顺序,而不考虑具体的值,导致会丢失部分信息。

4.2 斯皮尔曼等级相关系数

主要用于评价顺序变量间的线性相关关系。

4.3 代码实现

from scipy import stats
import numpy as np

a = np.array([1,2,3,4,5])分析
b = np.array([1,6,7,8,20])
print(stats.spearmanr(a,b))

4.4 结果分析

SpearmanrResult(correlation=0.9999999999999999, pvalue=1.4042654220543672e-24)
  • correlation:相关系数
  • p-value:原假设为两组数据之间不存在相关性,p-value < 0.05 原假设

Original: https://blog.csdn.net/xdg15294969271/article/details/120177633
Author: 牛右刀薛面
Title: (9)数据分析-相关性分析

相关文章
OCR文字识别经典论文详解 人工智能

OCR文字识别经典论文详解

📝 OCR文字识别技术介绍合集: 1️⃣OCR文字识别技术系列第一章:OCR文字识别技术总结(一) 2️⃣OCR文字识别技术系列第二章:OCR文字识别技术总结(二) 3️⃣OCR文字识别技术系列第三章...
机器学习笔记--2.1文本分类 人工智能

机器学习笔记–2.1文本分类

从分类算法层面来看,各类语言的文本分类技术大同小异,但从整个流程来考察,不同语言的文本处理所用到的技术还是有差别的。下面给出中文语言的文本分类技术和流程,主要包括以下几个步骤: (1)预处理:去除文本...
ArUco 人工智能

ArUco

文章目录 一、ArUco简介 二、Marker和字典 三、步骤 * 1.创建Marker(Marker Creation) 2.检测Marker(Marker Detection) 3.姿态估计(Po...