zoukankan      html  css  js  c++  java
  • 拓端tecdat|R语言逻辑回归分析连续变量和分类变量之间的“相关性“

    原文链接:http://tecdat.cn/?p=18169

     

    比如说分类变量为是否幸存、是因变量,连续变量为年龄、是自变量,这两者可以做相关分析吗?两者又是否可以做回归分析?

    我们考虑泰坦尼克号数据集,

    1.  
       
    2.  
      titanic = titanic[!is.na(titanic$Age),]
    3.  
      attach(titanic)

     考虑两个变量,年龄x(连续变量)和幸存者指标y(分类变量)

    1.  
       
    2.  
      X = Age
    3.  
      Y = Survived

     年龄可能是逻辑回归中的有效解释变量,

    1.  
      summary(glm(Survived~Age,data=titanic,family=binomial))
    2.  
       
    3.  
      Coefficients:
    4.  
      Estimate Std. Error z value Pr(>|z|)
    5.  
      (Intercept) -0.05672 0.17358 -0.327 0.7438
    6.  
      Age -0.01096 0.00533 -2.057 0.0397 *
    7.  
      ---
    8.  
      Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
    9.  
       
    10.  
      (Dispersion parameter for binomial family taken to be 1)
    11.  
       
    12.  
      Null deviance: 964.52 on 713 degrees of freedom
    13.  
      Residual deviance: 960.23 on 712 degrees of freedom
    14.  
      AIC: 964.23

     此处的显着性检验的p值略低于4%。实际上,可以将其与偏差值(零偏差和残差)相关联。

    在x毫无价值的假设下,D_0趋于具有1个自由度的χ2分布。我们可以计算似然比检验的p值自由度,

    1.  
       
    2.  
      1-pchisq(
    3.  
      [1] 0.03833717

     与高斯检验一致。但是如果我们考虑非线性变换

    1.  
      glm(Survived~bs(Age)
    2.  
       
    3.  
      Coefficients:
    4.  
      Estimate Std. Error z value Pr(>|z|)
    5.  
      (Intercept) 0.8648 0.3460 2.500 0.012433 *
    6.  
      bs(Age)1 -3.6772 1.0458 -3.516 0.000438 ***
    7.  
      bs(Age)2 1.7430 1.1068 1.575 0.115299
    8.  
      bs(Age)3 -3.9251 1.4544 -2.699 0.006961 **
    9.  
      ---
    10.  
      Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
    11.  
       
    12.  
      (Dispersion parameter for binomial family taken to be 1)
    13.  
       
    14.  
      Null deviance: 964.52 on 713 degrees of freedom
    15.  
      Residual deviance: 948.69 on 710 degrees of freedom

    Age的p值更小,似乎“更重要”

    1.  
       
    2.  
      [1] 0.001228712

    为了可视化非零相关性,可以考虑给定y = 1时x的条件分布,并将其与给定y = 0时x的条件分布进行比较,

    1.  
       
    2.  
      Two-sample Kolmogorov-Smirnov test
    3.  
       
    4.  
      data: X[Y == 0] and X[Y == 1]
    5.  
      D = 0.088777, p-value = 0.1324
    6.  
      alternative hypothesis: two-sided

     即p值大于10%时,两个分布没有显着差异。

    1.  
       
    2.  
      v= seq(0,80
    3.  
      v1 = Vectorize(F1)(vx)

     

    我们可以查看密度

    另一种方法是离散化变量x并使用Pearson的独立性检验,

    1.  
       
    2.  
      table(Xc,Y)
    3.  
      Y
    4.  
      Xc 0 1
    5.  
      (0,19] 85 79
    6.  
      (19,25] 92 45
    7.  
      (25,31.8] 77 50
    8.  
      (31.8,41] 81 63
    9.  
      (41,80] 89 53
    10.  
       
    11.  
      Pearson's Chi-squared test
    12.  
       
    13.  
      data: table(Xc, Y)
    14.  
      X-squared = 8.6155, df = 4, p-value = 0.07146

     p值在此处为7%,分为年龄的五个类别。实际上,我们可以比较p值

    1.  
      pvalue = function(k=5){
    2.  
      LV = quantile(X,(0:k)/k)
    3.  
       
    4.  
       
    5.  
      plot(k,p,type="l")
    6.  
      abline(h=.05,col="red",lty=2)

     

    只要我们有足够的类别,P值就会接近5%。实际上年龄在试图预测乘客是否幸存时是一个重要的变量。


     

    最受欢迎的见解

    1.R语言多元Logistic逻辑回归 应用案例

    2.面板平滑转移回归(PSTR)分析案例实现

    3.matlab中的偏最小二乘回归(PLSR)和主成分回归(PCR)

    4.R语言泊松Poisson回归模型分析案例

    5.R语言回归中的Hosmer-Lemeshow拟合优度检验

    6.r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现

    7.在R语言中实现Logistic逻辑回归

    8.python用线性回归预测股票价格

    9.R语言如何在生存分析与Cox回归中计算IDI,NRI指标

    ▍关注我们 【大数据部落】第三方数据服务提供商,提供全面的统计分析与数据挖掘咨询服务,为客户定制个性化的数据解决方案与行业报告等。 ▍咨询链接:http://y0.cn/teradat ▍联系邮箱:3025393450@qq.com
  • 相关阅读:
    2018 ACM 网络选拔赛 徐州赛区
    2018 ACM 网络选拔赛 焦作赛区
    2018 ACM 网络选拔赛 沈阳赛区
    poj 2289 网络流 and 二分查找
    poj 2446 二分图最大匹配
    poj 1469 二分图最大匹配
    poj 3249 拓扑排序 and 动态规划
    poj 3687 拓扑排序
    poj 2585 拓扑排序
    poj 1094 拓扑排序
  • 原文地址:https://www.cnblogs.com/tecdat/p/14118070.html
Copyright © 2011-2022 走看看