Я использую пакет boot
в R для расчета загрузочных SE и доверительных интервалов. Я пытаюсь найти элегантный и эффективный способ получить имена моих параметров вместе с распределением их исходных данных. Например, рассмотрим простой пример, приведенный here:Получить имена коэффициентов регрессии с R Bootstrap
# Bootstrap 95% CI for regression coefficients
library(boot)
# function to obtain regression weights
bs = function(data, indices, formula) {
d = data[indices,] # allows boot to select sample
fit = lm(formula, data=d)
return(coef(fit))
}
# bootstrapping with 1000 replications
results = boot(
data=mtcars,
statistic=bs,
R=1000,
formula=mpg~wt+disp)
Это работает отлично, за исключением того, что результаты просто появляются в виде числовых показателей:
# view results
results
Bootstrap Statistics :
original bias std. error
t1* 34.96055404 0.1559289371 2.487617954
t2* -3.35082533 -0.0948558121 1.152123237
t3* -0.01772474 0.0002927116 0.008353625
В частности, при получении в длинные, сложные регрессионные формулы, вовлекая множество переменных факторов, может потребоваться некоторая работа, чтобы отслеживать, какие именно индексы идут, с какой оценкой коэффициента.
Я мог бы, конечно, снова переоформить мою модель за пределами функции начальной загрузки и извлечь имена с помощью names(coef(fit))
или что-то вроде того, или, возможно, использовать что-то еще, например, вызов model.matrix()
. Они кажутся громоздкими, как с точки зрения дополнительного кодирования, так и с точки зрения дополнительных ресурсов CPU и ram.
Как легко получить хороший вектор имен коэффициентов для сопряжения вектора ошибок стандартного коэффициента в ситуациях, подобных этому?
UPDATE
Основываясь на большом ответ от ЖМА, вот моего основного кода, чтобы получить базовую регрессионную таблицу:
Names = names(results$t0)
SEs = sapply(data.frame(results$t), sd)
Coefs = as.numeric(results$t0)
zVals = Coefs/SEs
Pvals = 2*pnorm(-abs(zVals))
Formatted_Results = cbind(Names, Coefs, SEs, zVals, Pvals)
'attr (results $ t0," names ")'; от поиска 'str (results)' – user20650