Ich versuche ein Regressionsmodell anzupassen, um Spenden in Diktatorspielen zu erklären. Da ich viele Variablen habe, möchte ich den Prozess mit einer "for" -Schleife automatisieren. Ich beginne jetzt mit univariaten Modellen. Wenn ich die Passungen fit[1:24]
drucke/zusammenfasse, werden nur die Abschnitte und Koeffizienten angezeigt. Es scheint, dass die p-Werte nicht gespeichert werden?lm in for Schleife keine p-Werte gespeichert? (in R)
predictor<-0
fit<-0
dictatorgame<-mydata$dictatorgame
sumres<-0
pVal<-0
for(i in 1:24) #24 predictor variables stored in column 1-24 in mydata
{
predictor<-mydata[i]
unlist(predictor)
fit[i]<-lm(dictatorgame~unlist(predictor))
}
habe ich versucht, zwei verschiedene Lösungen, die ich hier auf SO gefunden, beide scheinen zu denken, dass die Objekte Atom:
sumres[i]=summary(fit[i])
pf(sumres[i]$fstatistic[1L], sumres[i]$fstatistic[2L],sumres[i]$fstatistic[3L], lower.tail = FALSE)
und
pVal[i] <- (fit[i])$coefficients[,4]
aber immer am Ende immer Fehlermeldungen $ operator is invalid for atomic vectors
.
'Prädiktor <-mydata [i]' scheint falsch. Wenn 'mydata' ein data.frame ist, sollte es' prediktor <-mydata [, i] 'sein. – Alex
Ja, das ist eine sauberere Lösung für das, was ich getan habe ('unlist (predictor)'). Nachdem ich das in meinem Code geändert habe, sehe ich immer noch keine p-Werte (Abschnitte und Koeffizienten scheinen jedoch korrekt zu sein). – YaeVo