Les posteurs les plus actifs de la semaine
niaboc
syntaxe_nombreuses variables à expliquer_LM Vote_lcapsyntaxe_nombreuses variables à expliquer_LM Voting_barsyntaxe_nombreuses variables à expliquer_LM Vote_rcap 
Ayana
syntaxe_nombreuses variables à expliquer_LM Vote_lcapsyntaxe_nombreuses variables à expliquer_LM Voting_barsyntaxe_nombreuses variables à expliquer_LM Vote_rcap 
A k a
syntaxe_nombreuses variables à expliquer_LM Vote_lcapsyntaxe_nombreuses variables à expliquer_LM Voting_barsyntaxe_nombreuses variables à expliquer_LM Vote_rcap 
Eric Wajnberg
syntaxe_nombreuses variables à expliquer_LM Vote_lcapsyntaxe_nombreuses variables à expliquer_LM Voting_barsyntaxe_nombreuses variables à expliquer_LM Vote_rcap 
yulione
syntaxe_nombreuses variables à expliquer_LM Vote_lcapsyntaxe_nombreuses variables à expliquer_LM Voting_barsyntaxe_nombreuses variables à expliquer_LM Vote_rcap 
droopy
syntaxe_nombreuses variables à expliquer_LM Vote_lcapsyntaxe_nombreuses variables à expliquer_LM Voting_barsyntaxe_nombreuses variables à expliquer_LM Vote_rcap 
Aytan
syntaxe_nombreuses variables à expliquer_LM Vote_lcapsyntaxe_nombreuses variables à expliquer_LM Voting_barsyntaxe_nombreuses variables à expliquer_LM Vote_rcap 
Coco
syntaxe_nombreuses variables à expliquer_LM Vote_lcapsyntaxe_nombreuses variables à expliquer_LM Voting_barsyntaxe_nombreuses variables à expliquer_LM Vote_rcap 
gg
syntaxe_nombreuses variables à expliquer_LM Vote_lcapsyntaxe_nombreuses variables à expliquer_LM Voting_barsyntaxe_nombreuses variables à expliquer_LM Vote_rcap 


syntaxe_nombreuses variables à expliquer_LM

Aller en bas

syntaxe_nombreuses variables à expliquer_LM Empty syntaxe_nombreuses variables à expliquer_LM

Message par CupOfAppleTea le Lun 11 Fév 2013 - 11:31

Bonjour,

Je souhaiterais savoir comment intégrer facilement de nombreuses variables à expliquer dans la formule d'une régression linéaire.
Je dispose d'un tableau de données avec 680 variables à expliquer et 3 variables explicatives. Je souhaite tout traiter d'un seul coup car toutes mes variables à expliquer sont corrélées, il s'agit d'une même mesure effectuée à chaque fois sur une longueur d'onde différente. Je ne peux donc pas les considérer séparément (impossible à interpréter ensuite).

Je souhaite procéder à une analyse canonique discriminante et j'ai pour cela besoin de créer en premier lieu un modèle linéaire. Je dois intégrer dans ce modèle les 3 première colonne de mon tableau comme variables explicatives catégorielles et les 680 autres colonnes comme variables à expliquer. Je voudrais pouvoir intégrer les 680 colonnes sans avoir à toutes les noter. Sauriez-vous comment faire?

Merci d'avance!

CupOfAppleTea

Nombre de messages : 28
Date d'inscription : 14/12/2012

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

syntaxe_nombreuses variables à expliquer_LM Empty Re: syntaxe_nombreuses variables à expliquer_LM

Message par Nik le Lun 11 Fév 2013 - 12:50

...alors là tu m'as perdu au bout du 2e paragraphe.

Nik

Nombre de messages : 1605
Date d'inscription : 23/05/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

syntaxe_nombreuses variables à expliquer_LM Empty Re: syntaxe_nombreuses variables à expliquer_LM

Message par CupOfAppleTea le Lun 11 Fév 2013 - 13:23

Mon objectif est de procéder à une analyse canonique discriminante.
Pour faire simple, je dispose du jeu de données suivant:
_Un tableau de 680 colonnes.
_ la première colonne identifie les individus sur lesquelles j'ai mesuré chacune des variables.
_ les colonne 2, 3 et 4 contiennent des variables explicatives de type facteur.
_ les colonnes 5 à 680 contiennent les variables à expliquer.

Je dois d'abord faire un modèle linéaire que je rentrerai ensuite dans la formule de l'analyse canonique discriminante.
Je dois donc dans mon modèle linéaire considérer mes 3 variables explicatives ainsi que mes 676 variables à expliquer.
La formule du modèle linéaire étant du type : y~x je dois rentrer 676 variables dans y. Ce que je cherche, c'est une formule me permettant de ne pas avoir à spécifier mes 676 variables une par une. Je voudrais pouvoir les rentrer en une seule fois. Un truc du type:
(avec "a" mon tableau de données)
Code:
mod=lm(a[,5:680]~a$Var1*a$Var2*a$Var3)

Seulement, "a[,5:680]" ne fonctionne pas. J'obtiens le message d'erreur suivant:
Code:
Error in model.frame.default(formula = a[, 5:680] ~ flatitude * ftype *  :
  invalid type (list) for variable 'a[, 5:680]'

Est-ce plus clair? Smile

CupOfAppleTea

Nombre de messages : 28
Date d'inscription : 14/12/2012

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

syntaxe_nombreuses variables à expliquer_LM Empty Re: syntaxe_nombreuses variables à expliquer_LM

Message par Nik le Lun 11 Fév 2013 - 21:29

Je ne sais pas si on parle de la même chose mais une analyse discriminante ne sait pas gérer une réponse multiple. En plus, avec plus de 600 variables on est vraiment dans un degré élevé de multivarié où il est extrêmement peu probable que les réponses soient indépendantes.

Une analyse discriminante cherche à maximiser une inertie inter-classe dans un tableau de données quand on connait déjà les dites classes. Ce qui est expliqué c'est donc le facteur de différenciation en classe. Les descripteurs des individus servent à caractériser également les groupes.

A la lmite tu es plutôt dans le champs de la MANOVA mais ça me parait là aussi peu réalisable. Peut être devrais tu mieux exposer ton questionnement avant de te lancer dans des choses abracadabrantesques.

Nik

Nombre de messages : 1605
Date d'inscription : 23/05/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

syntaxe_nombreuses variables à expliquer_LM Empty Re: syntaxe_nombreuses variables à expliquer_LM

Message par CupOfAppleTea le Mar 12 Fév 2013 - 14:08

Voici un lien pour le package que je souhaite utiliser:
http://cran.r-project.org/web/packages/candisc/candisc.pdf

Comme vous pourrez le lire dans la partie "description" dans la page 1 du .pdf, ce package généralise l'analyse canonique discriminante, limitée à une one-way MANOVA, à une multi-way MANOVA.

Cette méthode permet donc de gérer une réponse multiple puisqu'elle permet de décrire les relations linéaires qui existent entre 2 ensembles de variables mesurées sur les mêmes individus.

Comme vous le faites remarquer, les variables de réponse ne sont en effet pas indépendantes puisque chaque variable correspond dans mon cas à une même mesure effectuée sur une longueur d'onde différente (mesure d'absorbance) : var1 = mesure sur longueur d'onde 1; var2 = mesure effectuée sur longueur d'onde 2; etc.

Enfin, pour en revenir à mon problème de départ, j'ai donc effectué une mesure d'absorbance sur des longueurs d'onde allant de 350 à 1000 nanomètres. J'obtiens donc pour chaque individu (ici une feuille) une courbe d'absorbance sur l'ensemble du spectre mesuré. Afin de traiter ces données, je considère chaque longueur d'onde comme une variable de réponse. Je me retrouve donc avec autant de variable que de longueur d'onde.
J'ai repéré dans un article que cette méthode était utilisée pour traiter ce type de données, c'est pourquoi je m'y intéresse.

CupOfAppleTea

Nombre de messages : 28
Date d'inscription : 14/12/2012

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

syntaxe_nombreuses variables à expliquer_LM Empty Re: syntaxe_nombreuses variables à expliquer_LM

Message par Nik le Mar 12 Fév 2013 - 22:17

Une MANOVA suppose que les variables prédites sont indépendantes. Si ce n'est pas le cas alors les résultats sont incertains. Il existe des tentatives pour remédier à ce problème comme la 50-50 MANOVA. Il n'en reste pas moins que plus de 600 variables à expliquer ça reste du domaine de l'utopie à mon avis.

Nik

Nombre de messages : 1605
Date d'inscription : 23/05/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

syntaxe_nombreuses variables à expliquer_LM Empty Re: syntaxe_nombreuses variables à expliquer_LM

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

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