Forum de Statistiques
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Les posteurs les plus actifs de la semaine
Erwan Delaune
regression - Boucle de regression linéaire univarié  Vote_lcapregression - Boucle de regression linéaire univarié  Voting_barregression - Boucle de regression linéaire univarié  Vote_rcap 
Eric Wajnberg
regression - Boucle de regression linéaire univarié  Vote_lcapregression - Boucle de regression linéaire univarié  Voting_barregression - Boucle de regression linéaire univarié  Vote_rcap 

-65%
Le deal à ne pas rater :
Aspirateur balai sans fil Xiaomi Dreame V10 2-en-1
209 € 599 €
Voir le deal

Boucle de regression linéaire univarié

Aller en bas

regression - Boucle de regression linéaire univarié  Empty Boucle de regression linéaire univarié

Message par gtoubonstras le Mar 10 Déc 2019 - 15:48

Bonjour à tous,

Cela fait des jours que je bloque sur un problème qui me semble simple mais que je n'arrive pas à résoudre.

J'essaye de créer une boucle pour 13 modèles linéaires univariés (dfg en fonction de mes variables) pour que ma boucle effectue une régression linéaire entre dfg et mes autres variables.

mon codage :
var.quanti <- names(data[,sapply(data, is.numeric)])[-1]
param.matrix <- sapply(var.quanti, function(x) as.numeric(coef(lm(as.formula(paste0("dfg ~", x)), data=data))))
param<- data.frame(intercept=param.matrix[1,], pente=param.matrix[2,])

Réponse de R :
Error in param.matrix[1, ] : nombre de dimensions incorrect

Par ailleurs je dois extraire de mes régressions, mes coefficient, ma p value ainsi que l'IC à 95%

Etant donné que je n'arrive pas à faire ma boucle, j'essaye aussi en parallèle d'extraire chacun mes coefficient, ma p value ainsi que l'IC à 95% de chaque modèle linéaire en univarié afin de les mettre dans un data.frame.

Je sais pas si j'ai été assez clair en vous expliquant mon problème mais si quelqu'un pourrait m'aider cela serait vraiment génial.

Je vous remercie
Gaël

gtoubonstras

Nombre de messages : 1
Date d'inscription : 10/12/2019

Revenir en haut Aller en bas

regression - Boucle de regression linéaire univarié  Empty Re: Boucle de regression linéaire univarié

Message par droopy le Mer 11 Déc 2019 - 10:28

Bonjour,

sans plus de détails c'est compliqué de t'aider. tu as vérifier la structure de param.matrix ?
Peut-être que le plus simple est d'abord de faire estimer tout tes modèles dans un lapply pour qu'ils soient stockés et ensuite d'extraire ce qui t'intéresse ?
Code:
mods <- lapply(var.quanti, function(x) lm(as.formula(paste0("dfg ~ ", x)), data= data))
t(sapply(mods, coef))
t(sapply(modes, confint))
# pour la p-value :
fun <- function(x) {
  s1 <- summary(x)
  f <- s1$fstatistic
  pv <- pf(f[1L], f[2L], f[3L], lower.tail = FALSE)
  pv
}
sapply(mods, fun)
cdlt
droopy
droopy

Nombre de messages : 1137
Date d'inscription : 04/09/2009

Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum