繁体   English   中英

我如何修复摘要/系数表 R 中缺失的 output (NA)

[英]How do i fix the missing output (NA) in my summary/coefficients table R

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

我还检查了任何 null 值,但没有。 我使用 as.numeric 和 as.integer 在连续值和离散值之间更改了它,但在 output 中它仍然显示为 NA。变量本身测量捐献的血液总量。

我无法弄清楚这一点,这让我很困扰。 谢谢

这是一个详细说明我上面所做评论的示例; 我在这里使用简单的线性 model,但同样的原则适用于逻辑回归 model。

  1. 让我们生成一些数据:我们为 model 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. 我们适合model。

     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

您可以看到x2的估计值为NA 这是x1x2线性相关的直接结果。 换句话说, x2是冗余的,数据可以用线性估计来描述 model y = 3.4968 * x1 + epsilon ; 这显然与理论系数x1 + 2.5 * x1 = 3.5 * x1非常吻合。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM