Aqui está um pequeno exemplo:
MyDf<-data.frame(x=c(1,2,3,4), y=c(1.2, .7, -.5, -3))
Agora com o base::lm
:
> lm(y~x, data=MyDf) %>% summary
Call:
lm(formula = y ~ x, data = MyDf)
Residuals:
1 2 3 4
-0.47 0.41 0.59 -0.53
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.0500 0.8738 3.491 0.0732 .
x -1.3800 0.3191 -4.325 0.0495 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.7134 on 2 degrees of freedom
Multiple R-squared: 0.9034, Adjusted R-squared: 0.8551
F-statistic: 18.71 on 1 and 2 DF, p-value: 0.04952
Agora, tente a mesma coisa com biglm
o biglm
pacote:
XX<-biglm(y~x, data=MyDf)
print(summary(XX), digits=5)
Large data regression model: biglm(y ~ x, data = MyDf)
Sample size = 4
Coef (95% CI) SE p
(Intercept) 3.05 1.30243 4.79757 0.87378 0.00048
x -1.38 -2.01812 -0.74188 0.31906 0.00002
Observe que precisamos do print
e digits
para ver o valor-p. Os coeficientes e erros padrão são os mesmos, mas os valores de p são muito diferentes. Porque isto é assim?
pt(-3.491, 2)*2
compnorm(-3.491)*2
, por exemplo.