1
이미 회귀 된 쌍을 제외하고 내 데이터 집합의 각 변수 쌍에 로지스틱 회귀 분석을 실행하고 싶습니다. 모든 변수는 이항식입니다. 출력에는 쌍 테스트 및 테스트 통계가 포함되어야합니다. 필자가 사용해야하는 다른 데이터 세트가 있기 때문에 모든 변수가 여러 개 포함 된 다른 데이터 세트에서 작동하는 스크립트를 작성하려고합니다.로지스틱 회귀 이중 루프 R
샘플 데이터 세트에는 Var1이라는 6 개의 변수가 포함됩니다. 각각 Var6과 50 개의 관측치가 있습니다. VAR3에 Var6, 변수 2를 대입 할 때 변수 :
Var1 = c(rbinom(50,1,0.5))
Var2 = c(rbinom(50,1,0.25))
Var3 = c(rbinom(50,1,0.6))
Var4 = c(rbinom(50,1,0.2))
Var5 = c(rbinom(50,1,0.3))
Var6 = c(rbinom(50,1,0.8))
dt = data.table(Var1, Var2, Var3, Var4, Var5, Var6)
head(dt)
Var1 Var2 Var3 Var4 Var5 Var6
1 1 0 1 1 0 1
2 1 0 0 0 0 1
3 0 0 1 0 0 1
4 1 0 1 0 1 0
5 1 0 1 1 0 1
6 0 1 1 1 0 0
그래서 변수 2를 대입 할 때 변수에 VAR1을 회귀하고 싶은 Var6 등 출력 테이블은 Dependent_var, Independent_var, 견적, 합계, P_VALUE을 포함해야합니다.
n = ncol(dt)
output <- data.table(matrix(nrow=(n*(n+1))/2, ncol=5))
names(output) = c("Dependent_var", "Independent_var", "Estimate", "Stat", "P_value")
head(output)
Dependent_var Independent_var Estimate Stat P_value
1: NA NA NA NA NA
2: NA NA NA NA NA
3: NA NA NA NA NA
4: NA NA NA NA NA
5: NA NA NA NA NA
6: NA NA NA NA NA
지금 내가 제대로 출력 테이블을 채우는 방법 모두를 통해 모든과 루프 하나 개의 변수 및 루프에 ... 다음 확실하지 않다 :
나는 출력 테이블을했습니다. .. 어떤 도움이라도 대단히 감사합니다!
my_func <- function(x) {
for (i in 1:ncol(x)) {
fit <- glm(x[, i] ~ ., data = x, family = binomial(link = "logit"))
print(summary(fit))
}
}
매개 변수 x
은 dataframe입니다 :
빠른 답변 주셔서 감사합니다 @jsb! – Panda
뭔가 잘못하고있는 것처럼 보입니다 ... 그래서 데이터 프레임으로 dt를 돌린 다음 루프를 실행하려고했습니다. 그래도 데이터를 얻지 못하면 어떻게 그것을 간질 낼 수 있습니까? 추신. 죄송합니다. 주석 섹션에 올바른 형식의 코드가없는 것 같습니다. 'dt <- data.frame (dt) my_func
Panda