Похоже, вы не можете сохранить результат в объекте обычным способом.Вы можете использовать capture.output
для сохранения вывода консоли в объекте, а затем впоследствии использовать str_split
для получения правильного значения.Таким образом, для примера в файле справки это будет:
library(mgcv)
set.seed(0)
dat <- gamSim(1,n=200)
b <- gam(y~s(x0)+s(x1)+s(x2)+s(x3),data=dat)
r <- capture.output(gam.check(b))
p <- strsplit(r[12], " ")[[1]][11]
Но поскольку значение p является просто строкой, вы не получите точное значение p таким образом.
Edit: user20650 ответ даст вам правильный вывод:
r <- k.check(b)
r[,'p-value']