不包括在lm.fit

时间:2017-11-18 02:52:48

标签: r na lm

我尝试使用.lm.fit来拟合线性回归(因为它比lm更快)。我在NA中有X

set.seed(1)
df <- data.frame(y = rnorm(100),batch = sample(1:3, 100, replace = T), phase = sample(c("A", "B", "C"), 100, replace = T))
df$batch <- factor(df$batch)
df$phase <- factor(df$phase)

NA介绍给df$phase

df$phase[sample(1:100, 10, replace = F)] <- NA

我使用na.action='na.pass'来创建X

X <- model.matrix(lm(formula = as.formula("y ~ batch + phase"), data = df), na.action = 'na.pass')

但是.lm.fit(y = df$y, x = X)会抛出错误:

  

.lm.fit中的错误(y = df $ y,x = X):&#39; x&#39;

中的NA / NaN / Inf

并且不接受任何na.action选项。例如,使用:

.lm.fit(y = df$y, x = X, na.action = 'na.exclude')

我明白了:

  

.lm.fit中的错误(y = df $ y,x = X,na.action =&#34; na.exclude&#34;):         未使用的参数(na.action =&#34; na.exclude&#34;)

有没有办法让.lm.fit跳过NA个样本,并为这些residuals个样本填充NA NA个?{/ p >

0 个答案:

没有答案