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
Aucun utilisateur

-20%
Le deal à ne pas rater :
Pack Gigabyte Ecran PC Gamer 27″ LED M27Q (rev2.0) + Radeon RX 6950 ...
749 € 939 €
Voir le deal

Grand nombre de variables

3 participants

Aller en bas

nombre - Grand nombre de variables Empty Grand nombre de variables

Message par sonda kammoun Mar 8 Déc 2015 - 8:44

Bonjour,
J'ai besoin d'étudier l'ACP et une classification hiérarchique pour 12 individus à 950 variables, est ce que vous pouvez me conseiller un logiciel qui soit pas limité à 256 variables, merci et bonne journée

sonda kammoun

Nombre de messages : 3
Date d'inscription : 08/12/2015

Revenir en haut Aller en bas

nombre - Grand nombre de variables Empty Re: Grand nombre de variables

Message par Florent Aubry Mar 8 Déc 2015 - 9:18

Vu comment fonctionne l'ACP, tu ne peux avoir au maximum que 12 axes. Ton système est donc dégénéré. Vu le nombre de variables par rapport au nombre d'individus, le résultat sera n'importe quoi. Il faut commencer par utiliser une méthode de sélection des variables ou essayer directement des méthodes d'ACP robuste. Certains auteurs suggèrent de faire une ACP 'classique' sur une estimation robuste de la matrice de variance/covariance ou de corrélation (selon le type d'ACP recherchée). Sous R, je connais les méthodes cov.rob de MASS or cov.Mcd de robustbase ou le package pcaPP mais je ne sais pas s'ils répondent à tes contraintes. Peut-être que Bioconductor pourrait aussi répondre à ton problème. Bioconductor est implanté aussi sous R. Toujours sous R, va voir aussi du côté des packages GeneNet et mixOmics.

Florent Aubry

Nombre de messages : 251
Date d'inscription : 02/11/2015

Revenir en haut Aller en bas

nombre - Grand nombre de variables Empty Re: Grand nombre de variables

Message par sonda kammoun Mar 8 Déc 2015 - 19:40

Merci Florent pour la réponse, réellement ce n'est pas des variables que j'ai mais des mesures d'éclairement sur une plage variant de 250 à 950 points pour chaque spécimens étudiés qui sont au nombre de 12, et j'ai besoin d'effectuer une classification hiérarchique pour les grouper en classes selon leur éclairement,

sonda kammoun

Nombre de messages : 3
Date d'inscription : 08/12/2015

Revenir en haut Aller en bas

nombre - Grand nombre de variables Empty Re: Grand nombre de variables

Message par Florent Aubry Mer 9 Déc 2015 - 8:22

Donc, le nombre de points varie d'un sujet à l'autre. Cela rend très difficile de faire une ACP qui suppose que tous les sujets sont définis par les mêmes variables ou, dans le cas d'ACP analysant des séries (temporelles notamment), que chacune des variables représente le même point.

Si tes mesures par individus peuvent être assimilées à des séries temporelles, c'est-à-dire à la mesure d'un même paramètre en fonction d'un second paramètre qui est la dimension des points de mesures (temps, espace...), tu pourrais alors essayer du côté des séries temporelles. Mais dans ce cas, il serait sans doute préférable d'estimer par des méthodes (robustes) d'interpolation tous tes individus sur le même ensemble de points.

Florent Aubry

Nombre de messages : 251
Date d'inscription : 02/11/2015

Revenir en haut Aller en bas

nombre - Grand nombre de variables Empty Re: Grand nombre de variables

Message par Eric Wajnberg Jeu 10 Déc 2015 - 6:06

Le système n'est pas dégénéré. Tu auras effectivement 12 axes maxi, mais ces 12 axes expliqueront tout de même l'ensemble de l'information contenue dans des données, et permettra de faire les classifications souhaitées. Ceci est du au fait qu'on peut sans problème calculer la matrice de variance-covariance (ou de corrélation) et qui sera diagonalisée. Celle-ci n'aura qu'au maximum 12 valeurs propres non nulles.

L'alternative - dans ce cas - est parfois de faire une Analyse en Coordonnées Principales (à ne pas confondre avec l'Analyse en Composantes Principales; les deux se nomment "ACP", on préfère donc dans le second cas de parler de ACoP ou PCoA en anglais), ce qui peut revenir à travailler sur la transposée de la matrice de données d'origine. Cela revient à considérer les variables comme les individus, et réciproquement. On restera dans un système maximal de 12 dimensions, et les classifications souhaitées - cette fois-ci sur les variables j'imagine - reste possibles. Ca aura au moins le mérite de pouvoir utiliser des logiciels qui limitent le nombre de variables (il n'y en aura que 12 dans ce cas).

HTH, Eric.
Eric Wajnberg
Eric Wajnberg

Nombre de messages : 1237
Date d'inscription : 14/09/2012

Revenir en haut Aller en bas

nombre - Grand nombre de variables Empty Re: Grand nombre de variables

Message par Florent Aubry Jeu 10 Déc 2015 - 8:59

Eric,

Pour une fois je suis en désaccord partiel avec toi. En effet, on peut toujours calculer une matrice de variance/covariance ou de corrélation dans la configuration présentée par sonda et appliquer dessus une classification hiérarchique. Par contre si on essaie de déterminer le nombre de dimensions à retenir par une technique du type de l'analyse parallèle de Horn ou assimilée, on s'aperçoit qu'on peut pas estimer le nombre de dimensions à retenir. Par exemple, on obtient par simulation d'une matrice 12*950 de matrice de variance/covariance théorique l'identité, comme résultat de l'analyse de Horn :
Code:
--------------------------------------------------
Component   Adjusted    Unadjusted    Estimated
           Eigenvalue  Eigenvalue    Bias
--------------------------------------------------
1          -2.959922   97.390555      100.35047
suivie d'une erreur pour les autres composantes (package paran de R)

De plus, la diagonalisation de la matrice de variance/covariance (ou corrélation) ou la SVD sur les données initiales donnera 950 valeurs propres dont au maximum 12 non nulles (à la précision de la machine près). De ce fait, je serai l'encadrant de sonda, je n'aurais aucune confiance dans le résultat de la classification faite par une ACP classique. C'est la raison pour laquelle je propose d'utiliser des méthodes robustes. Cependant, comme tu le suggères, l'utilisation de l'Analyse en Coordonnées Principales est une alternative qui, notamment permettra de se faire une véritable idée sur les redondance possibles entre variables et on peut toujours faire une classification hiérarchique sur les coordonnées des sujets sur les dimensions ainsi calculées. Je suis peu familier avec ce type d'analyse ACoP et je me demande dans quelle mesure on peut considérer qu'il y a une relation de dualité entre l'ACP et l'ACoP et donc, dans quelle mesure peut-on considérer le résultat de l'ACoP comme assimilable à une solution du problème de l'ACP qui serait plus robuste car ayant réduit la dimension du problème ?

Amicalement

Florent Aubry

Nombre de messages : 251
Date d'inscription : 02/11/2015

Revenir en haut Aller en bas

nombre - Grand nombre de variables Empty Re: Grand nombre de variables

Message par Eric Wajnberg Jeu 10 Déc 2015 - 16:22

Florent,

L'espace dans lequel est compris les données avec 12 individus à 950 variables est un espace de (maxi) 12 dimensions même si la matrice de corrélation (ou de variance-covariance) fait 950x950. Par définition, la diagonalisation de cette matrice donnera donc (au plus) 12 valeurs propres (les premières) non nulles et les autres seront nulles. C'est juste ça. Prenons un exemple sous R (avec un jeu de données de 3 individus et 4 variables) :

Code:
> essai=data.frame(a=rnorm(3),b=rnorm(3),c=rnorm(3),d=rnorm(3))
> essai
           a          b          c          d
1  0.4366233  0.1880957  1.0290036 -1.9564803
2 -1.2735214 -0.8183522 -0.7552258 -1.0534662
3 -1.7890011  0.8080191 -1.1701622 -0.5102775
La matrice de corrélation est bien de 4x4:
Code:
> cor(essai)
            a           b           c          d
a  1.00000000 -0.08660595  0.99900669 -0.9875676
b -0.08660595  1.00000000 -0.04212696  0.2421333
c  0.99900669 -0.04212696  1.00000000 -0.9795820
d -0.98756762  0.24213334 -0.97958201  1.0000000
Et il y a bien (au plus) 3 valeurs propres seulement qui sont non nulles.
Code:
> eigen(cor(essai))
$values
[1]  3.000394e+00  9.996056e-01  5.551115e-17 -4.440892e-16

$vectors
           [,1]        [,2]       [,3]        [,4]
[1,]  0.5744792 -0.09896871  0.0000000  0.81251393
[2,] -0.1066633 -0.98297784 -0.1428759 -0.04431706
[3,]  0.5713630 -0.14322086  0.6895189 -0.42142112
[4,] -0.5763167 -0.05871588  0.7100353  0.40032655

(ici, il n'y a même que 2 valeurs propres non nulles, car il n'y a aucune structure dans ces données, et car - par hasard - les variables a & d et les variables a & c sont fortement corrélées).

Je ne dis que ça !

AMicalement, Eric.


Dernière édition par Eric Wajnberg le Ven 11 Déc 2015 - 5:39, édité 1 fois
Eric Wajnberg
Eric Wajnberg

Nombre de messages : 1237
Date d'inscription : 14/09/2012

Revenir en haut Aller en bas

nombre - Grand nombre de variables Empty Re: Grand nombre de variables

Message par sonda kammoun Jeu 10 Déc 2015 - 20:46

Merci Florent et Eric pour votre intérêt à ce sujet, je vais essayer de transposer les données et je vous tiens au courant de l'évolution de l'analyse

sonda kammoun

Nombre de messages : 3
Date d'inscription : 08/12/2015

Revenir en haut Aller en bas

nombre - Grand nombre de variables Empty Re: Grand nombre de variables

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