具有2级因子误差的R中的线性回归

时间:2019-02-12 01:25:17

标签: r

我正在尝试使用2级性别作为分类变量在R中进行线性回归,但是R会导致错误,请问我该如何解决?您可以在这里https://www.dropbox.com/s/jbuyearzlw5zf9q/covar.csv?dl=0

下载我的数据

非常感谢您的帮助!

> covar = read.csv("covar.csv")
> yv = as.numeric(covar$yv)
> sex = as.factor(covar$sex)
> model = lm(yv~sex)
Error in `contrasts<-`(`*tmp*`, value = contr.funs[1 + isOF[nn]]) : 
  contrasts can be applied only to factors with 2 or more levels
> head(sex)
[1] 0 0 1 1 0 0
Levels: 0 1
> head(yv)
[1] 23 NA NA NA NA 23

1 个答案:

答案 0 :(得分:1)

不幸的是,数据中sex = 1的点中有100%的yv = NA。 您的数据实际上只包含sex = 0数据。

summary(covar[covar$sex==1,])
       yv              sex   
 Min.   : NA      Min.   :1  
 1st Qu.: NA      1st Qu.:1  
 Median : NA      Median :1  
 Mean   :NaN      Mean   :1  
 3rd Qu.: NA      3rd Qu.:1  
 Max.   : NA      Max.   :1  
 NA's   :187533          

table(covar$sex)
     0      1 
220685 187533 

sum(is.na(covar[covar$sex ==1,1]))
[1] 187533