다음과 비슷한 구조의 거대한 데이터 프레임으로 작업하고 있습니다. 나는 output_reg를 사용하여 기울기를 저장하고 각 처리에 대한 절편을 작성하지만 각 lm (y ~ x)에 r.squared를 추가하고 다른 두 열 외에 다른 열에 저장해야합니다. 그 어떤 힌트라도?각 회귀에 대해 r.squared를 얻는 방법?
library(plyr)
field <- c('t1','t1','t1', 't2', 't2','t2', 't3', 't3','t3')
predictor <- c(4.2, 5.3, 5.4,6, 7,8.5,9, 10.1,11)
response <- c(5.1, 5.1, 2.4,6.1, 7.7,5.5,1.99, 5.42,2.5)
my_df <- data.frame(field, predictor, response, stringsAsFactors = F)
output_reg<-list()
B<-(unique(my_df$field))
for (i in 1:length(B)) {
index <- my_df[my_df$field==B[i],]
x<- index$predictor
y<- index$response
output_reg[[i]] <- lm (y ~ x) # gets estimates for each field
}
감사
감사합니다 ! 이것은 쉽고 편리한 방법입니다. 그러나 절편과 기울기 및 r.squared에 응답하는 3 개의 다른 열이있는 데이터 그램으로 저장하는 방법은 무엇입니까? – Jack
'do.call (rbind, output_reg)'해야합니다. 답변을 업데이트했습니다. – Psidom
죄송합니다 Psidom, lm (y ~ x + x^2)을 실행하고 싶다면 코드가 어떻게 바뀔까요? 미리 감사드립니다. – Jack