R의 for-loop에서 많은 모델을 평가하려고합니다. 먼저 'Date'변수에 사용할 수있는 값 집합을 정의하고이를 저장했습니다 '날짜'에 그런 다음 각 모델에 대해 '날짜'값에 따라 일반 데이터 집합의 하위 집합을 정의합니다.for 루프에서 tryCatch를 사용하는 방법 R
결국 내 목표는이 모든 모델의 계수를 effRain과 effWindchill의 두 행렬에 저장하는 것입니다.
문제는 : 어떤 경우에는 오류로 인해 glmer
모델을 추정 할 수 없습니다. 이 경우 루프를 건너 뛰고 루프의 다음 단계를 계속 진행합니다. 그러나 저는 R에 익숙하지 않습니다. 아마 tryCatch
을 사용할 필요가 있다는 것을 알았지 만 이것을 어떻게 내 코드에 맞춰야합니까? 나는 노력하고 노력했지만, 나는 그것을 알아낼 수 없다.
이 내 코드는 지금까지 최대입니다 : 내가 for
부작용 및 방지하기 위해 여기 for
을 사용하고 lapply
를 사용하지 않는 것이 좋습니다
Dates <- c(19710428,19721129,19740529,19770525,19780531,19810526,19820602,19820908,
19840614,19860319,19860521,19890615,19890906,19900321,19940302,19940503,
19940609,19980304,19980506,19990303,19990610,20020206,20020515,20030122,
20030311,20040610,20060307,20061122,20070307,20090604,20100303,20100609,
20110302,20120912)
effRain <- matrix(nrow=34,ncol=2,0)
effWindchill <- matrix(nrow=34,ncol=2,0)
for(i in 1:34){
hulpdata <- hulpdata <- subset(banaan,Date==Dates[i])
attach(hulpdata)
SP2 <- SP/100
model1 <- glmer (cbind(opkomst, nnietgestemd) ~
(1|gemnr)+ Windchill + Rain + Windspeed + SP2 + lag_popkomst + NB + OL + loginw
, family=binomial(link=logit))
effRain[i] <- coef(summary(model1))[3]
effWindchill[i] <- coef(summary(model1))[2]
}