目录:

  • 前言
  • 偏相关或复相关
  • 意义与用途
  • 分析方法:
  • 1、 样本相关系数矩阵、相关系数检验
  • 2、 复相关分析
  • 3、 决定系数 (RMSE的介绍)
  • 小结

一、前言:

继上一篇文章,继续探讨相关性分析,这次不再是两个变量,而是3个或者以上的变量之间的相关关系分析。


没读过上篇文章请先仔细阅读再过来,因为多变量本质上是基于双变量的

TzeSing Kong:相关性分析(两变量)zhuanlan.zhihu.com

python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性



二、偏相关或复相关


简单相关:研究两变量之间的关系

偏相关或复相关:研究三个或者以上变量与的关系


在这里仍然是选择最简单的线性相关来解释:


三、意义与用途:

有些情况下,我们只想了解两个变量之间是否有线性相关关系并不想拟合建立它们的回归模型,也不需要区分自变量和因变量,这时可用相关性分析。


四、分析方法:


1、样本相关阵


设 python因变量与多个自变量相关性 多个因变量一个自变量_方差_02来自正态总体 python因变量与多个自变量相关性 多个因变量一个自变量_相关分析_03 容量为 python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_04 的样本,其中每个样本 python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_05有 python因变量与多个自变量相关性 多个因变量一个自变量_方差_06 个观测

分别计算两两样本之间的简单相关系数 python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_07 ,它们构成的矩阵就是:

python因变量与多个自变量相关性 多个因变量一个自变量_相关分析_08

由于每个变量跟自己的相关系数就是 python因变量与多个自变量相关性 多个因变量一个自变量_方差_09 ,即:

python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_10


其中,python因变量与多个自变量相关性 多个因变量一个自变量_方差_11 就是两个变量的简单相关系数。

python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_12

例子:

python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_13

> X <- read.table("clipboard", header = T)
> cor(X)  # 相关系数矩阵
           y        x1        x2        x3        x4
y  1.0000000 0.9871498 0.9994718 0.9912053 0.6956619
x1 0.9871498 1.0000000 0.9907018 0.9867664 0.7818066
x2 0.9994718 0.9907018 1.0000000 0.9917094 0.7154297
x3 0.9912053 0.9867664 0.9917094 1.0000000 0.7073820
x4 0.6956619 0.7818066 0.7154297 0.7073820 1.0000000


再看看矩阵散点图

> pairs(X, ...)  # 多元数据散点图

python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_14


相关系数检验:

> install.package('psych')  # 先安装一个'psych'的包
> library(psych)
> corr.test(X)
Call:corr.test(x = yX)

Correlation matrix

y   x1   x2   x3   x4

y  1.00 0.99 1.00 0.99 0.70

x1 0.99 1.00 0.99 0.99 0.78

x2 1.00 0.99 1.00 0.99 0.72

x3 0.99 0.99 0.99 1.00 0.71

x4 0.70 0.78 0.72 0.71 1.00

Sample Size

[1] 31

Probability values (Entries above the diagonal are adjusted for multiple tests.)

y x1 x2 x3 x4

y  0  0  0  0  0

x1 0  0  0  0  0

x2 0  0  0  0  0

x3 0  0  0  0  0

x4 0  0  0  0  0

To see confidence intervals of the correlations, print with the short=FALSE option

上面矩阵是相关系数的 python因变量与多个自变量相关性 多个因变量一个自变量_相关分析_15 值矩阵,下面矩阵是 python因变量与多个自变量相关性 多个因变量一个自变量_相关分析_16值矩阵

可以看出 python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_17 与 python因变量与多个自变量相关性 多个因变量一个自变量_方差_18 的关系都十分密切相关系数 python因变量与多个自变量相关性 多个因变量一个自变量_方差_19 且置信度 python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_20


2、复相关分析

实际分析中,一个变量( python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_21 )往往要受到多种变量( python因变量与多个自变量相关性 多个因变量一个自变量_相关分析_22 )的综合影响,所谓复相关,就是研究多个变量同时与某个变量的相关关系,度量复相关程度的指标是复相关系数


多个变量同时与某个变量的相关关系不能直接测算,只能通过间接测算

复相关系数的计算:


设因变量 python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_23 ,自变量为 python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_24 ,构造一个线性模型为:

python因变量与多个自变量相关性 多个因变量一个自变量_方差_25

python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_26


对 python因变量与多个自变量相关性 多个因变量一个自变量_方差_27 与 python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_28 作相关分析,就是对 python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_29 与 python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_30

 做简单相关分析


记:

  •  为  与  的复相关系数
  •  为  与  的简单相关系数


python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_31

 的计算公式:

python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_32

复相关系数常用于多元线性回归分析中,我们希望知道因变量与一组自变量之间的相关程度,即复相关,复相关系数反映了一个变量与另一组变量的密切程度。


假设检验:

与多元回归的方差分析一样,所以我留在下篇文章阐述回归分析与方差分析的时候会继续详细说明


综上: python因变量与多个自变量相关性 多个因变量一个自变量_相关分析_33

至于 python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_34和 python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_35 还有 python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_36

 是什么?

就由下篇文章阐述回归分析的时候会详细说明。

TzeSing Kong:线性回归——描述变量间预测关系最简单的回归模型zhuanlan.zhihu.com

python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_37


3、决定系数 python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_38 (coefficient of determination


在复相关系数中,根号里面的比值 python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_39 ,

其实说明了回归平方和总离差平方和的比值,反应了回归贡献的百分比


把复相关系数两边平方一下就能得到决定系数

python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_40


决定系数用于评价多元回归方程、变量选择、曲线回归方程拟合的好坏程度中,常常用到。

python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_41


具体用法,留在回归分析中详细阐述。

TzeSing Kong:线性回归——描述变量间预测关系最简单的回归模型zhuanlan.zhihu.com

python因变量与多个自变量相关性 多个因变量一个自变量_python因变量与多个自变量相关性_37

在 线性回归 中的 3.4 决定系数

# 先建立多元线性回归模型

> fm = lm(y~x1+x2+x3+x4,data = X)
计算多元线性回归模型决定系数
> R2 = summary(fm)$r.sq

> R2

[1] 0.9997162
计算复相关系数

> R = sqrt(R2)

> R

[1] 0.9998581

【补】

什么是RMSE?

RMSE是回归问题的性能指标,衡量的是 预测值 python因变量与多个自变量相关性 多个因变量一个自变量_回归分析_43 与 真实值 python因变量与多个自变量相关性 多个因变量一个自变量_相关分析_44间的差距

是测量预测误差的标准差python因变量与多个自变量相关性 多个因变量一个自变量_相关分析_45

举例子:RMSE 等于 50000,根据【 python因变量与多个自变量相关性 多个因变量一个自变量_方差_46 准则】意味着:大约 68% 的预测值位于真实值的 50000元( python因变量与多个自变量相关性 多个因变量一个自变量_方差_47 )以内,大约 95% 的预测值位于真实值的 100000元 ( python因变量与多个自变量相关性 多个因变量一个自变量_方差_48 )以内,大约 99.7% 的预测值位于真实值的 150000元内 ( python因变量与多个自变量相关性 多个因变量一个自变量_方差_49 )以内


五、小结:

可以看出多变量相关分析跟回归分析的关系很密切,多变量相关分析能为回归分析服务,因为要具有相关性才有做线性回归拟合的价值