IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

ACP floue et package ade4


Sujet :

R

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut ACP floue et package ade4
    Bonjour,

    Etudiante en stage, je me retrouve bloquée par le package ade4 que je n'arrive pas à utiliser...
    Je dois effectuer une ACP sur codage flou sur mon tableau qui contient 34 variables de traits biologiques, 203 stations hydrologiques (individus), et une variable qualitative illustrative (nom des hydroécorégions auxquelles appartiennent les stations).

    Mon gros souci est que je n'arrive pas à réaliser cette ACP floue.
    Voici mes lignes de commandes et les messages de R, sachant que ma variable illustrative est dans la colonne numéro 2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    > C<-read.csv("Calcul matriciel.csv",header=T,row.names=1)
    >C
    >C.fuzzy<-prep.fuzzy.var(C[,2:36],col.blocks=34)
    Erreur dans `[.data.frame`(C, , 2:36) : undefined columns selected
    Mes colonnes sont pourtant bien définies... Quand je réalise cette ligne de commande sans ma variable, elle s'exécute parfaitement, mais ensuite, impossible de réaliser mon ACP floue (dudi.fpca) sur mon tableau, le même message d'erreur s'affiche.
    Je ne sais pas quoi faire ...

    De plus si quelqu'un sait comment on inclut des ellipses sous ade4 (en prenant donc ma variable illustrative ...), et comment on enlève les numéros des stations pour ne garder que des points, et les ellipses avec le nom de la HER concernée et une couleur pour chaque HER et ses stations ... Eh bien je suis grandement preneuse !!!

    Pour info, voici le script sous FactomineR pour une simple ACP que j'essaie de reproduire sous Ade4 pour une ACP floue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    >acp<-read.csv("ACP abondance.csv",header=T)
    >acp
    >res.pca<-PCA(acp[,3:354],scale.unit=TRUE,ncp=5,graph=T)
    >res.pca<-PCA(acp,scale.unit=TRUE,ncp=5,quali.sup=2,graph=T) 
    >concat<-cbind.data.frame(acp[,2],res.pca$ind$coord)
    >ellipse.coord<-coord.ellipse(concat,bary=T)
    >windows();plot.PCA(res.pca,axes=c(1, 2), choix="ind", habillage=2,ellipse=ellipse.coord,label = list("quali"), cex =1, cex.axis =0.8, cex.label =1,cex.lab = 1, ylim = c(-10,10), xlim = c(-20,20),title="ACP centrée sur les abondances")
    Merci d'avance à ceux qui prendront le temps de me lire et de me répondre !

    Bonne soirée,

    Lucile

  2. #2
    Inactif
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 96
    Points : 97
    Points
    97
    Par défaut
    Bonjour,
    Tu peux peut-être commencer par vérifier ta fonction en lui spécifiant le séparateur de colonnes qui est un ";" pour les fichiers csv. Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     c <- read.table("monFic.csv", sep=";", dec=".",header=3) où dec indique le séparateur decimal et sep celui des colonnes
    Sinon, sur l'utilisation de ADE4, il y a ce lien qui contient pas mal de choses.
    Bonne continuation.

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Bonjour !

    Et merci pour le lien, il m'a permis de trouver pas mal de lignes de commandes !!

    Par contre je suis bloquée en un point :

    Je dois maintenant réaliser mon ACP floue sur chacun de mes traits. Certains traits ont 3 à 8 variables, mais j'en ai un qui n'a que deux variables ... Et mon gros souci, c'est qu'il m'est impossible de réaliser mon ACP, R "refuse"...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    > C<-read.csv("cycle.csv",header=T,row.names=1,dec=",")
    > her<-C$HER.2
    > traits<-C[,c("Inf_1an","Sup_1an")]
    > C.fuzzy<-prep.fuzzy.var(traits,col.blocks=2)
    > C.fpca<-dudi.fpca(C.fuzzy)
    Select the number of axes: 2
    > C.fpca
    Duality diagramm
    class: pca dudi
    $call: dudi.pca(df = df, row.w = row.w, col.w = col.w, center = TRUE, 
        scale = FALSE, scannf = scannf, nf = nf)
     
    $nf: 1 axis-components saved
    $rank: 1
    eigen values: 0.02526
      vector length mode    content       
    1 $cw    2      numeric column weights
    2 $lw    203    numeric row weights   
    3 $eig   1      numeric eigen values  
     
      data.frame nrow ncol content             
    1 $tab       203  2    modified array      
    2 $li        203  1    row coordinates     
    3 $l1        203  1    row normed scores   
    4 $co        2    1    column coordinates  
    5 $c1        2    1    column normed scores
    other elements: cent norm blo indica FST inertia 
    > C.fpca$FST
           inertia       max        FST
    FV1 0.02526485 0.4866933 0.05191124
    > scatter(dudi.fpca(C.fuzzy,scann=FALSE,nf=2),csub=0.8,clab.row=1,clab.col=0.8)
    Erreur dans `[.data.frame`(x$li, , c(xax, yax)) : undefined columns selected
    > windows();s.label(C.fpca$li, xax = 1, yax = 2,clabel=0,boxes=F,pch=5,cpoint=1,possub="topleft",sub = "ACP floue des traits biologiques")
    Erreur dans scatterutil.base(dfxy = dfxy, xax = xax, yax = yax, xlim = xlim,  : 
      Non convenient selection for yax
    Le problème c'est que quand il me demande de choisir le nombre d'axes, je marque 2, mais le graph des valeurs propres me renvoie un seul et unique axe de 100% ... Donc je ne peux rien faire avec cela.
    Et quand je rentre un seul axe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    > windows();s.label(C.fpca$li, xax = 1, yax = 1,clabel=0,boxes=F,pch=5,cpoint=1,possub="topleft",sub = "ACP floue des traits biologiques")
    cela me sort un graphique avec les points alignés en une droite montante passant par l'origine ...

    Comment cela se fait-il ? Quel type d'info puis-je sortir de cela ?

    Merci à ceux qui auront le courage de me conseiller !!

    Lucile

Discussions similaires

  1. Réponses: 1
    Dernier message: 09/06/2009, 18h13
  2. Réponses: 0
    Dernier message: 17/05/2009, 15h05
  3. Package devC++
    Par Fl0r3nt dans le forum Dev-C++
    Réponses: 15
    Dernier message: 29/10/2003, 15h42
  4. [Packages] Problème d'organisation
    Par lolo... dans le forum JBuilder
    Réponses: 5
    Dernier message: 22/04/2003, 14h05
  5. Vue Packages
    Par ced dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 01/04/2003, 09h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo