如何解决汇总/系数表R中的缺失输出(NA)

保利

我在r中建立了逻辑回归模型,但是当我使用summary(model)检查系数时,输出在四个列(估计值,标准误差,z值和z)中显示了我的一个自变量的NA。我的其他三个变量工作正常。

我还检查了任何空值,但没有一个。我使用as.numeric和as.integer在连续值和离散值之间进行了更改,但仍在输出中显示为NA。变量本身测量的是献血总量。

我无法弄清楚,这困扰着我。谢谢

莫里斯·埃弗斯(Maurits Evers)

这是一个示例,详细说明了我上面的评论;我在这里使用一个简单的线性模型,但是相同的原理适用于您的逻辑回归模型。

  1. 让我们生成一些数据:我们为模型生成数据y = x1 + x2 + epsilon,其中两个预测变量均x1x2线性相关:x2 = 2.5 * x1

    # Generate sample data
    set.seed(2017);
    x1 <- seq(1, 100);
    x2 <- 2.5 * x1;
    y <- x1 + x2 + rnorm(100);
    
  2. 我们拟合模型。

    df <- cbind.data.frame(x1 = x1, x2 = x2, y = y);
    fit <- lm(y ~ x1 + x2, df);
    
  3. 查看参数估计。

    summary(fit);
    #
    #Call:
    #lm(formula = y ~ x1 + x2, data = df)
    #
    #Residuals:
    #     Min       1Q   Median       3Q      Max
    #-2.50288 -0.75360 -0.01388  0.67935  3.08515
    #
    #Coefficients: (1 not defined because of singularities)
    #            Estimate Std. Error t value Pr(>|t|)
    #(Intercept) 0.166567   0.215534   0.773    0.441
    #x1          3.496831   0.003705 943.719   <2e-16 ***
    #x2                NA         NA      NA       NA
    #---
    #Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
    #
    #Residual standard error: 1.07 on 98 degrees of freedom
    #Multiple R-squared:  0.9999,   Adjusted R-squared:  0.9999
    #F-statistic: 8.906e+05 on 1 and 98 DF,  p-value: < 2.2e-16
    

您可以看到的估算值x2NA这是一个直接后果x1,并x2为线性相关。换句话说,x2是多余的,并且数据可以通过估计的线性模型来描述y = 3.4968 * x1 + epsilon这显然与理论系数非常吻合x1 + 2.5 * x1 = 3.5 * x1

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章