由于我的数据集的大小,我必然会使用Speedlm
,fastLm
或biglm
。
不幸的是,我坚持使用df_abs <- mutate(df_data, interval = cut(varC, df_abs$interval)) %>%
group_by(interval) %>%
summarise(count=n(), sum=sum(varC))
# interval count sum
#1 (-Inf,-60] 1 -81.0
#2 (-30,0] 4 -80.0
#3 (0,30] 3 65.2
#4 (30,60] 3 146.8
#5 (200, Inf] 1 256.3
df_rel <- mutate(df_data_arranged,
interval = cut(observationPercent, df_rel$interval)) %>%
group_by(interval) %>%
summarise(count=n(), sum=sum(varC))
# interval count sum
#1 (5,15] 1 -81.0
#2 (15,50] 5 -64.7
#3 (50,75] 3 92.6
#4 (75,95] 2 104.1
#5 (95,100] 1 256.3
因为speedlm
没有fastlm
功能,update
只支持单核。
使用speedlm我想显示所有残差。我知道,对于biglm
或lm
,我可以简单地使用fastlm
函数。然而事实证明residuals()
不支持这一点。
speedlm
有没有办法使用lmfit <- speedglm(formula , res)
print(names(lmfit))
[1] "coefficients" "coef" "df.residual" "XTX" "Xy" "nobs" "nvar" "ok" "A" "RSS" "rank" "pivot" "sparse" "yy" "X1X" "intercept" "method" "terms" "call"
lmfit <- fastLm(formula, res)
print(names(lmfit))
[1] "coefficients" "stderr" "df.residual" "fitted.values" "residuals" "call" "intercept" "formula"
显示所有残差?
尝试speedlm
时,只会打印print(residuals(lmfit))
修改
当使用@Roland提到的方法时,它纯粹返回NULL
的
NA
答案 0 :(得分:5)
library(speedglm)
存储拟合值(需要更多RAM):
fit <- speedlm(Sepal.Length ~ Species, data = iris, fitted = TRUE)
iris$Sepal.Length - predict(fit)
或者不要存储它们(需要更多的CPU时间):
fit1 <- speedlm(Sepal.Length ~ Species, data = iris)
iris$Sepal.Length - predict(fit1, newdata = iris)