# Bootstrap 95% CI for R-Squared
library(boot)
# function to obtain R-Squared from the data
rsq <- function(formula, data, indices) {
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=rsq,
R=1000, formula=mpg~wt+disp)
# get 95% confidence interval
boot.ci(results, type="bca")
이 부트 스트랩을 실행하고 intercept, wt 및 disp 변수에 대한 1000 개의 추정치를 얻은 다음 모든 추정치를 데이터 프레임에 넣으려고한다고 가정합니다.
dataframe = data.frame(results$t)
그렇게 할 것이지만 열 이름이 올바른 변수 이름을 얻도록 어떻게 코딩합니까? 나는 그렇게했고 열 이름을 'Var1' 'Var2'와 'Var3'로 만들지 만 'Intercept' 'wt'와 'weight'가되기를 바라며 이것으로 변경할 수 있다는 것을 알고 있습니다. 열이 부팅에서 올바른 이름을 얻도록 자동화하는 방법이 궁금합니다.
여기서는 names
't0'컴포넌트 의 속성을 사용할 수 있습니다 . 모델 객체 (또는 모든 객체)가있는 경우 str
각 구성 요소의 구조를 이해 하기 위해 확인하는 것이 좋습니다 . 이것은 모델과 구성 요소를 이해하는 데 크게 도움이 될 것입니다.
str(results)
#List of 11
# $ t0 : Named num [1:3] 34.9606 -3.3508 -0.0177
# ..- attr(*, "names")= chr [1:3] "(Intercept)" "wt" "disp"
# $ t : num [1:1000, 1:3] 34.1 37.2 37.3 33.8 34.7 ...
# $ R : num 1000
# ...
출력은 a list
이고 list
구성 요소 추출은 $
또는 [[
(여러 요소의 경우 [
) 를 사용 하여 수행 할 수 있습니다.
t
요소는이다 matrix
아니오 dimnames
동안 속성 t0
은 "이름"속성을 가지고있다. 우리가 이름을 바꿀 경우에 따라서, data.frame
변환을 matrix
바로 추출names
df1 <- data.frame(results$t)
names(df1) <- names(results$t0)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다