Quand transformer les variables prédictives lors d'une régression multiple?

10

Je prends actuellement mon premier cours de régression linéaire appliquée au niveau universitaire et je me débat avec des transformations de variables prédictives en régression linéaire multiple. Le texte que j'utilise, Kutner et al "Modèles statistiques linéaires appliqués" ne semble pas couvrir la question que j'ai. (à part suggérer qu'il existe une méthode de Box-Cox pour transformer plusieurs prédicteurs).

Face à une variable de réponse et à plusieurs variables prédictives, quelles conditions s'efforce-t-on de respecter avec chaque variable prédictive? Je comprends que nous recherchons en fin de compte la constance de la variance des erreurs et des erreurs normalement distribuées (au moins dans les techniques que j'ai apprises jusqu'à présent.) J'ai eu de nombreux exercices de retour, où la solution était, par exemple y ~ x1 + (1/x2) + log(x3), où un ou plusieurs prédicteurs ont été transformés.

J'ai compris le raisonnement sous une régression linéaire simple, car il était facile de regarder y ~ x1 et les diagnostics associés (qq tracés de résidus, résidus vs y, résidus vs x, etc.) et de tester pour voir si y ~ log ( x1) correspondent mieux à nos hypothèses.

Y a-t-il un bon endroit pour commencer à comprendre quand transformer un prédicteur en présence de nombreux prédicteurs?

Merci d'avance. Mat

Mat
la source

Réponses:

3

Je prends votre question à être: comment voulez - vous détecter lorsque les conditions qui rendent les transformations appropriées existent, plutôt que ce que les conditions logiques sont . Il est toujours agréable de réserver des analyses de données avec l'exploration, en particulier l'exploration de données graphiques. (Divers tests peuvent être effectués, mais je vais me concentrer sur l'EDA graphique ici.)

Les graphiques de densité du noyau sont meilleurs que les histogrammes pour un premier aperçu de la distribution univariée de chaque variable. Avec plusieurs variables, une matrice de nuage de points peut être pratique. Lowess est également toujours conseillé au départ. Cela vous donnera un regard rapide et sale sur la question de savoir si les relations sont approximativement linéaires. Le package automobile de John Fox combine utilement ces éléments:

library(car)
scatterplot.matrix(data)

Assurez-vous d'avoir vos variables sous forme de colonnes. Si vous avez plusieurs variables, les tracés individuels peuvent être petits. Maximisez la fenêtre de tracé et les nuages ​​de points doivent être suffisamment grands pour sélectionner les tracés que vous souhaitez examiner individuellement, puis créer des tracés simples. Par exemple,

windows()
plot(density(X[,3]))
rug(x[,3])
windows()
plot(x[,3], y)
lines(lowess(y~X[,3]))

Après avoir ajusté un modèle de régression multiple, vous devez toujours tracer et vérifier vos données, tout comme avec une régression linéaire simple. Les tracés QQ pour les résidus sont tout aussi nécessaires, et vous pouvez faire une matrice de nuage de points de vos résidus par rapport à vos prédicteurs, en suivant une procédure similaire à la précédente.

windows()
qq.plot(model$residuals)
windows()
scatterplot.matrix(cbind(model$residuals,X))

Si quelque chose vous semble suspect, tracez-le individuellement et ajoutez abline(h=0)-le comme guide visuel. Si vous avez une interaction, vous pouvez créer une variable X [, 1] * X [, 2] et examiner les résidus par rapport à cela. De même, vous pouvez faire un nuage de points des résidus par rapport à X [, 3] ^ 2, etc. D'autres types de graphiques que les résidus par rapport à x que vous aimez peuvent être faits de la même manière. Gardez à l'esprit que ceux-ci ignorent tous les autres dimensions x qui ne sont pas tracées. Si vos données sont regroupées (c'est-à-dire à partir d'une expérience), vous pouvez créer des graphiques partiels au lieu de / en plus des graphiques marginaux.

J'espère que ça t'as aidé.

gung - Réintégrer Monica
la source
2
J'encouragerais une approche plus directe: utiliser des splines de régression pour modéliser les effets des prédicteurs afin de (1) ne pas supposer la linéarité et (2) estimer toutes les transformations simultanément. Cela s'apparente à une régression quadratique - en ajoutant un terme carré pour tous les prédicteurs. Avec des splines cubiques restreintes, par exemple, on ajoute une ou plusieurs fonctions de base non linéaires au modèle pour chaque prédicteur non connu pour fonctionner linéairement.
Frank Harrell
@Frank J'aime souvent les splines cubiques restreintes. Le seul point négatif est celui de l'interprétation, ce qui est un peu délicat et décourage souvent mes clients. L'ajout d'un terme polynomial (après le centrage) semble être plus interprétable
Peter Flom - Rétablir Monica
Merci à tous pour votre contribution, je l'apprécie énormément. Je pense que vous m'accordez actuellement trop de crédit. Ma question est en fait centrée sur ce qu'il faut rechercher dans les prédicteurs individuels pour savoir quand / si une transformation est applicable. Par exemple, si j'ai un modèle strictement additif, avec 3 prédicteurs, comment pourrais-je déterminer une transformation appropriée? Dans le cas des prédicteurs multiples, recherchons-nous généralement les mêmes principes que nous recherchons dans la régression linéaire simple? (c.-à-d. résidus favorables par rapport à la parcelle prévue et à la parcelle qq de résidus)
Matt
1
Les splines de régression de Peter ne sont pas beaucoup plus complexes que les quadratiques. Qui sait comment interpréter le coefficient d'âge quand l'âge ^ 2 est de toute façon dans le modèle? Et je ne vois pas où le centrage aide. J'interprète les ajustements splines avec des graphiques, ce que mes collaborateurs aiment. Matt une transformation est presque toujours nécessaire. C'est juste une question d'adéquation de la taille de l'échantillon pour estimer suffisamment de paramètres pour s'adapter aux effets non linéaires. Les splines de régression estiment directement les transformations et conduisent à des intervalles de confiance appropriés qui sont pénalisés pour les "looks de données". Les résidus impliquent une approche indirecte.
Frank Harrell
Désolé, vous avez toujours le coup de poster ici. Veuillez pardonner. Pour exposer mon dernier commentaire: un exemple récent que j'ai parcouru dans un texte avait le modèle résultant y ~ x1 + log (x2), et la seule note sur la transformation est "il était évident que x2 était bien adapté pour une transformation logarithmique . " J'essaie d'améliorer ma perception du moment où les transformations sont applicables. Est-il suffisant de simplement regarder les graphiques y ~ x_i et de procéder comme nous le ferions dans le cas à prédicteur unique? Que dois-je considérer d'autre?
Matt