新闻资讯

    对于数值型自变量和数值型因变量之间的关系,我们可以进行相关和回归分析。如果研究的是两个变量之间的关系,称为简单回归分析;如果研究的是两个以上变量之间的关系,称为多元回归分析。按照关系的形态,也可以分为线性回归分析与非线性回归分析

    相关性分析解决的两个问题:判断两个变量或者多个变量之间是否有依存关系,进一步分析变量之间的关联方向和关联强度。

    相关性分析

    系数

    应用场景

    缺点

    a.两个连续变量的度量线性相关

    b.观察值匹配

    c.观察值分布接近满足正态分布,或接近正态的单峰分布

    d.数据的标准差不为0

    a.异常值影响很大,可以提出异常值或者变量变换,以避免异常值干扰结论。

    b.相关系数一样的情况下,实际相关程度有可能存在明显差异。需要配合散点图分析。

    a.两个连续变量之间的单调关系

    b.可以描述非线性关系

    a.统计效能比相关系数要低一些(不容易检测出两者事实上存在的相关关系)

    b.配合散点图

    c.只要是单调关系,系数就为±1

    分类变量相关性计算_分类变量和连续变量怎么做散点图_matlab做散点密度图

    a.两个变量均为有序分类

    : 通常也叫积矩相关系数。简而言之:一个变量中的变化与另一个变量中的成比例变化相关。相当于协方差的升级版。

    :通常也叫斯皮尔曼秩相关系数。非参数方法,对数据分布没有要求,用于测量两个变量之间的关联程度。简而言之:评估两个连续变量之间的单调关系。在单调关系中,变量趋于一起变化,但不一定以恒定速率变化。

    :是用于检验至少有一个有序分类变量关联强度和方向的非参数分析方法。该检验与相关的应用范围基本一致,但更适用于存在多种关联的数据(如列联表)。

    01

    相关性

    |r|>0.95 存在显著性相关

    |r|≥0.8 高度相关

    0.5≤|r|

    0.3≤|r|

    |r|

    ±代表正相关还是负相关

    【示例】Step 1.数据分布情况的统计检验

    测试数据集:cars

    1.1 Q-Q图

    分类变量相关性计算_分类变量和连续变量怎么做散点图_matlab做散点密度图

    X轴是理论值,Y轴是观测值。当所有点都大致落在该参考线时,可以假定数据为正态。

    ()、qplot()、() 三个函数都可以用来看观察值的分布情况。

    qqnorm(cars$speed)qqnorm(cars$dist)
    library(ggplot2)qplot(sample=data$speed)qplot(sample=data$dist)
    library(ggpubr)ggqqplot(data$speed)ggqqplot(data$dist)

    library("devtools")library(ggpubr)library(ggthemr)library(ggthemes)library(ggsci)library("scales")library("mvnormtest")
    base_theme <- theme( plot.margin = unit(c(0.5,0.5,0.5,0.5),"cm"), plot.title = element_text(size = 24, face = "bold", color = "#22292F", margin = margin(b = 8)), plot.subtitle = element_text(size = 16, lineheight = 1.1, color = "#22292F", margin = margin(b = 25)), plot.caption = element_text(size = 12, margin = margin(t = 25), color = "#3D4852"), axis.title.x = element_text(margin = margin(t = 1),size=15,face = "bold",color="black"), axis.title.y = element_text(margin = margin(r = 1),size=15,face = "bold",color="black"), axis.text = element_text(color = "#22292F"), text=element_text(family='STXihei'), legend.title=element_blank(), panel.grid.major =element_blank(), axis.text.x = element_text(size=15,color="black"), axis.text.y = element_text(size=15,color="black") )
    p1 <- ggqqplot(cars$speed,color =pal_npg("nrc")(10)[4] ) + base_theme + labs(title="speed")p2 <- ggqqplot(cars$dist,color =pal_npg("nrc")(10)[4] ) + base_theme + labs(title="dist")
    p3 <- ggpubr::ggarrange(p1, p2, nrow = 2, ncol = 1, labels = c('A', 'B'))

    speed图中,所有的点基本都落在合理范围内,dist图中有少部分的点落在合理范围外,可能dist不符合正态分布。

    1.2 密度分布图:一般来说,正态分布的数据成钟型对称。

    p1 <- ggdensity(cars$speed,           main = "Density",          xlab = "Value",color =pal_npg("nrc")(10)[4] ) + base_theme + labs(title="speed")
    p2 <- ggdensity(cars$dist, main = "Density", xlab = "Value",color =pal_npg("nrc")(10)[4] ) + base_theme + labs(title="dist")p3 <- ggpubr::ggarrange(p1, p2, nrow = 2, ncol = 1, labels = c('A', 'B'))

    speed图显示为正态分布,dist图表现出偏态分布。

    Step2.正态分布评估原则上,需要对两个变量做两元正态分布检验,但实际操作中也经常用两个变量单因素正态分布来代替两元正态分布 。理论偏差概率是1%。

    2.1 单因素正态分布检验:

    一般来说,常用的正态分布检验为 -Wilk (SW) 检验 ,适用于3-50个样本的数据集。大样本可以用 JB检验 。

    speed 数据,p-value > 0.05,接受H0假设,数据为正态分布,且W值接近于1,正态分布程度比较高。

    dist 数据,p-value < 0.05,不符合正态分布。

    Tips:如果样本量足够大(n> 30),则违反正态性假设不会造成重大问题(中心极限定理)。这意味着我们在原则上可以忽略数据存在轻微的的分布非正态并使用参数测试 。

    2.2 两元正态分布检验:

    包.test()函数可以进行多元正态分布检验。

    分类变量和连续变量怎么做散点图_matlab做散点密度图_分类变量相关性计算

    p < 0.05,拒绝假设,非两元正态分布。

    Step 3.正态分布评估

    虽然数据正态分布检验不成立,但还是看了一下,、、三种方法差异。

    :cor=0.806,p-value

    :cor =0.830, p-value

    :cor =0.669, p-value 但该方法不太适用在这个条件下。

    ### 数据不符合两元正态分布检验,所以选择spearman检验
    ggplot(data = cars,aes(x=cars$speed,y=cars$dist))+ geom_point()+ geom_smooth(method = lm)+ theme_bw()+ base_theme + stat_cor(method = "spearman",label.x = 0, label.y =max(cars$dist) )+ stat_poly_eq(aes(label = ..eq.label..), formula = formula, parse = TRUE,geom = "text",label.x = 10,label.y = 100, hjust = 0)+ scale_fill_npg()+ xlab("speed") +   ylab("dist"

    参考资料

    《相关系数和秩相关系数介绍》

    《要做相关性分析,该如何选择正确的统计方法?》对于变量类型讲的特别清楚

    02

    一元线性回归分析

    一元回归分析与相关性的区别:一元回归分析有明确的自变量和因变量,相关性单纯指代相互的关系,在明确有自变量和因变量的情况下,近似等于一元回归分析。

    该模型,前提假设:

    线性---因变量与自变量之间是线性关系;

    分类变量和连续变量怎么做散点图_matlab做散点密度图_分类变量相关性计算

    独立性---因变量互相独立;

    正态性---对于固定的自变量值,因变量服从正态分布;

    同方差性---因变量的方差不随自变量的水平不同而变化。

    1.几个概念

    R方:直线的拟合程度( ,中文叫判定系数、拟合优度分类变量和连续变量怎么做散点图,决定系数),表示这一条直线能反映Y波动的一个程度。

    SST:总偏差平方和又称总平方和,Sum of Total,是每个因变量的实际值(给定点的所有Y)与因变量平均值(给定点的所有Y的平均)的差的平方和,即,反映了因变量取值的总体波动情况。

    SSR:回归平方和,Sum of ,因变量的回归值(直线上的Y值)与其均值(给定点的Y值平均)的差的平方和,即,它是由于自变量x的变化引起的y的变化,反映了y的总偏差中由于x与y之间的线性关系引起的y的变化部分,是可以由回归直线来解释的。

    SSE:残差平方和,又称误差平方和,Sum of Error),因变量的各实际观测值(给定点的Y值)与回归值(回归直线上的Y值)的差的平方和,它是除了x对y的线性影响之外的其他因素对y变化的作用分类变量和连续变量怎么做散点图,是不能由回归直线来解释的。

    SST(总偏差)=SSR(回归线可以解释的偏差)+SSE(回归线不能解释的偏差)

    回归直线的拟合程度的好坏,其实就是看看这条直线(及X和Y的这个线性关系)能够多大程度上反映(或者说解释)Y值的变化,定义

    R^2=SSR/SST 或 R^2=1-SSE/SST, R^2的取值在0,1之间,越接近1说明拟合程度越好。

    R(相关系数,相关系数)=R2(决定系数)

    R2:代表回归方程的拟合程度,表示这一条直线能反映Y波动的一个程度。

    R:代表XY线性相关的程度。(仅限于系数)

    2. 显著性检验(后面写多元回归会再标注一下注意事项)2.1 线性关系的检验

    由于估计方程是根据样本数据得到的,能否反映变量x和y的关系,需要检验证实。

    F检验

    2.2 回归系数的检验

    回归系数的显著性检验是检验x与y的影响是否显著,即检验一元线性回归模型y=β0+β1x+ε的回归系数β1是否等于0,等于0则y不依赖于x。

    分类变量和连续变量怎么做散点图_分类变量相关性计算_matlab做散点密度图

    t检验

    在一元线性回归中,由于自变量只有一个,上述F检验和t检验是等价的。但在多元回归分析中,这两种检验的意义是不同的,F检验用于检验总体回归关系的显著性,t检验用检验各个回归系数的显著性。

    library(tidyverse)library(ggpubr)
    model <- lm(dist ~ speed, data = cars)
    ggplot(cars, aes(dist, speed)) + geom_point() + geom_smooth(method = 'lm',formula = y ~ x)+ stat_poly_eq(aes(label = paste(..eq.label.., ..adj.rr.label.., sep = '~~~~')), formula = y ~ x, parse = T,size = 5, label.x = 0.1, #位置 ,0-1之间的比例 label.y = 1) + #stat_fit_tb(tb.type = 'fit.anova', #label.y.npc = "top", #label.x.npc = "left", # size = 4) + #添加方差分析表,用label.y可完全避免重叠 scale_fill_npg()+ xlab("speed") + ylab("dist") + base_theme +      stat_fit_deviations(formula = y ~ x) #连接点到线

    3. 回归分析结果的评价

    对于回归分析结果的评价,就是利用回归方程进行预测。

    3.1 点估计

    平均值的点估计是利用估计的回归方程,对x的一个特定值x0。求出y的平均值的一个估计值E(y0)。

    个别值的点估计是利用估计的回归方程,对x的一个特定值x0。求出y的一个个别值的估计值y0^。

    3.2区间估计

    利用估计的回归方程,对于x的一个特定值x0,求出y的一个估计值的区间就是区间估计,它分为置信区间估计和预测区间估计。

    可参考简书的文章,对于非统计学专业的人非常友好

    #

    4.残差分析

    验证统计假设:

    正态性

    独立性

    线性

    同方差性

    线性: vs ,残差图与拟合图,横坐标为真实值,纵坐标为残差(预测值-真实值),理论上两者没有相关性,如果有相关性,模型需要优化。正态性: Q-Q,正态QQ图,用于检验残差正态性,如果满足正态假设,那么图上的点就应该均匀的落在呈45°角的直线上(图中虚线),不然就违反了正态性的假设。同方差性:Scale-,如果满足同方差性,那么图中水平线周围的点应该随机分布,也就是说方差为一个常数。 VS :残差与杠杆图,从图形中可以鉴别出离群点,高杠杆值点和强影响点。离群点:表明拟合回归模型对其预测效果不佳;高杠杆值点:是一个异常的预测变量值的组合 ;强影响点:表明它对模型参数的估计产生的影响过大,非常不成比例。有个重要指标:Cook距离,指代强影响点。一般来说距离大于0.5的点就需要引起注意了。那个1,和0.5分别就是Cook距离为1和0.5的等高线。分析的时候,特殊的点会被标注出来,但需要审慎判断是否要删除。

网站首页   |    关于我们   |    公司新闻   |    产品方案   |    用户案例   |    售后服务   |    合作伙伴   |    人才招聘   |   

地址:北京市海淀区    电话:010-     邮箱:@126.com

备案号:冀ICP备2024067069号-3 北京科技有限公司版权所有