Identification des colonnes les mieux corrélées à une seule colonne<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Salut,
J'ai une table avec une colonne "résultat" et environ 100 colonnes de variables de processus. Je veux savoir quelle variable de processus affecte le plus mon résultat.
Un moyen simple consiste à tracer chaque variable de processus Vs. Résultat et regardez les boîtes à moustaches pour les corrélations. Mais l'inspection visuelle de 100 colonnes est assez difficile.
Existe-t-il un moyen d'automatiser ce processus.
J'apprécie votre réponse.
Seshadri
Re : Identifier les colonnes les mieux corrélées à une seule colonneMoi aussi j'essaie de résoudre ce problème. Pouvez-vous m'envoyer votre macro si possible.
Mon adresse mail : ndongariane20@gmail.com
Je vous serai reconnaissant.
Re : Identifier les colonnes les mieux corrélées à une seule colonneSalut Seshadri,
Pouvez-vous partager la macro avec moi. J'ai essayé de créer quelque chose comme ça pendant un moment.
mon email est : swami.kunal@yahoo.com
J'ai aussi une collection de macros utilitaires
Je ne sais pas s'ils vous serviraient à quelque chose, mais je serais heureux de les partager.
MerciRe : Identifier les colonnes les mieux corrélées à une seule colonneJ'ai un défi récurrent similaire - sauf que le mien n'est pas toujours posé par rapport à une colonne "résultat".La question que l'on me pose fréquemment est la suivante : "Quelle combinaison de colonnes [variables, attributs, quel que soit le nom que vous voulez leur donner] est la plus répandue dans les données ?"J'ai considéré les techniques suivantes : les arbres de décision, l'analyse par grappes et les méthodes de type régression.Tous nécessitent une "cible" ou une variable dépendante quelconque.Je m'intéresse à la manière dont les données sont réparties entre une multitude de variables - pour quelle combinaison de ces variables la densité (nombre de cas) est-elle la plus élevée ?
Je ne vous aide probablement pas, seshadri, mais j'ai également besoin de conseils sur ce problème similaire.Je vais lire les messages déjà suggérés - mais si quelqu'un a des idées supplémentaires, n'hésitez pas à les poster !
Merci.
Re : Identifier les colonnes les mieux corrélées à une seule colonneJ'ai une macro, %BESTCORR, qui calcule l'ensemble des variables qui sont fortement corrélées avec une variable dépendante (réponse) mais peu corrélées entre elles. La macro est paramétrée, vous pouvez donc fournir la définition (corrélation minimale pour la multicolinéarité), le seuil inférieur sur les corrélations pour les variables considérées et le nombre de variables à signaler.
Si vous voulez le code, c'est gratuit. Envoyez-moi simplement un message et je vous enverrai la macro par e-mail (ainsi qu'à toute autre personne qui pourrait la trouver utile).
Re : Identifier les colonnes les mieux corrélées à une seule colonneSeshardi écrit : "Je veux savoir quelle variable de processus affecte le plus mon résultat". Il ne s'agit pas d'un problème de corrélation - il s'agit du problème des meilleures variables : rechercher dans un grand nombre de variables pour déterminer une courte liste des facteurs les plus influents à utiliser dans un modèle. Il existe plusieurs méthodes pour répondre à cette question. Je trouve qu'une forêt Bootstrap est très utile à cette fin. George Hurley a présenté un article sur Bootstrap Forest dans JMP lors de la conférence NESUG 2012 - voici le lien Lex Jansen : http://www.lexjansen.com/mwsug/2012/JM/MWSUG-2012-JM04.pdf . J'ai fait une présentation sur Bootstrap Forest dans Base SAS au NESUG mais je comprends que vous travaillez dans JMP. Ma présentation NESUG n'était qu'un sous-titre que j'ai écrit du jour au lendemain pour remplacer un auteur qui a malheureusement dû annuler; Je ne pense pas que ce soit dans les actes mais j'en ferai un diaporama dans les prochains jours.
Si vous souhaitez prédire un résultat spécifique qui se prête à une analyse de régression, vous voudrez considérer la macro XCSTAT de Raimi et Lund : http://www.mwsug.org/proceedings/2011/stats/MWSUG-2011-SA03.pdf . Il n'est disponible que dans SAS pour le moment, pas dans JMP.
Re : Identifier les colonnes les mieux corrélées à une seule colonnece que je fais, c'est utiliser l'option de corrélations par paires, puis trier la tablette. vous pouvez trier par pvlue ou par la corrélation elle-même pour voir ce qui vous est le plus utile.
pour obtenir la corrélation par paires, vous pouvez cliquer sur le triangle rouge et le sélectionner dans le menu. si vous le souhaitez de manière permanente, allez dans fichier>>préférences>>plates-formes>>multivariées et cochez la case "corrélations par paires.
pour trier le tableau, il vous suffit de faire un clic droit sur le tableau de corrélation par paire lui-même et de choisir "trier par colonne".
malheureusement, je ne connais pas de moyen de trier la table par défaut ou de scripter le tri. il s'agit également d'une modification qui, une fois effectuée, n'est pas enregistrée dans le script si vous "enregistrez le script dans la table de données"
Re : Identifier les colonnes les mieux corrélées à une seule colonneSi vous voulez la corrélation la plus élevée, c'est simple à faire, en utilisant PROC CORR. Générez les corrélations dans un ensemble de données, prenez la valeur absolue des corrélations, puis triez.
Cependant, j'ai travaillé avec des données de processus de fabrication pendant un certain temps, permettez-moi de vous exhorter à modifier l'objectif. Souvent, vous aurez plusieurs variables qui ont des corrélations similaires, et celle qui a la corrélation la plus élevée pourrait être "pas statistiquement différente" en termes de corrélation de celle qui est en deuxième ou troisième place. Et il peut s'avérer que les trois corrélations se rapportent toutes à un seul phénomène, ou que, sur la base de la connaissance du premier principe, la troisième variable est très probablement liée à la véritable "cause". Ainsi, la sélection de la corrélation la plus élevée peut ne pas révéler cette information.
Ainsi, bien qu'il soit tentant de regarder la "corrélation la plus élevée", vous voudrez peut-être vraiment regarder les plusieurs corrélations les plus élevées. Vous voudrez peut-être utiliser une technique de modélisation qui tient vraiment compte de ces idées, comme les moindres carrés partiels (PROC PLS), qui vous fournit un vecteur indiquant quelles variables sont les plus corrélées avec la réponse, et un graphique à barres des chargements fournira vous avec un visuel de quelles variables de processus (au pluriel) sont fortement corrélées avec votre réponse. L'utilisation de PLS sur les variables de processus de fabrication est un vaste domaine d'étude, avec de nombreux articles de revues écrits à ce sujet et de nombreuses applications réussies.
L'autre problème ici est que la présence d'une ou plusieurs valeurs aberrantes peut grandement fausser les corrélations. Comment trouver des valeurs aberrantes dans un grand ensemble de données comme celui-ci ? C'est un tout autre problème, mais que vous devriez avoir en tête.
MISE À JOUR : d'accord, j'ai donné la réponse pour SAS, je vois que vous utilisez JMP, mais les mêmes idées s'appliquent.