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 :

Projeter un data-frame dans la PCA d'un autre data-frame


Sujet :

R

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Profil pro
    Consultant en technologies
    Inscrit en
    Octobre 2013
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies

    Informations forums :
    Inscription : Octobre 2013
    Messages : 158
    Par défaut Projeter un data-frame dans la PCA d'un autre data-frame
    Salut,
    J'ai deux data-frame.
    Dans le premier, un jeu de données annotées, sur le quel je fais une PCA afin de déterminer les axes dominants et leurs influences.
    Dans le second, j'ai des données non annotées, que je souhaite projeter dans la base de la PCA faite sur le premier jeu de données.

    J'utilise ade4 et dudi.pca.
    Mon code ressemble à ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Ref <-read.csv() #lecture du fichier de données annotées sur laquelle je définis ma base de PCA
    RefPCA <-subset(Ref,select -c()) # Nettoyage des données, pour n'avoir plus que des valeurs numériques, pertinentes et non corrélées. 
    Z<- dudi.pca(RefPCA, center = T, scale = T, scannf = F, nf =3) #$PCA sur 3 axes, 
    theData <-read.csv() # Données non annotées que je veux projeter dans Z
    Pour info
    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
     
    show(Z) #pour un set annoté de 120 éléments et 7 colonnes pertinentes 
    Duality diagramm
    class: pca dudi
    $call: dudi.pca(df = Q4, center = T, scale = T, scannf = T)
     
    $nf: 3 axis-components saved
    $rank: 7
    eigen values: 2.559 1.911 1.205 0.6798 0.4152 ...
      vector length mode    content       
    1 $cw    7      numeric column weights
    2 $lw    120     numeric row weights   
    3 $eig   7      numeric eigen values  
     
      data.frame nrow ncol content             
    1 $tab       120   7    modified array      
    2 $li        120   3    row coordinates     
    3 $l1        120  3    row normed scores   
    4 $co        7    3    column coordinates  
    5 $c1        7    3    column normed scores
    other elements: cent norm
    Par contre, la formule magique (ou la commande) pour passer de mes paramètres originaux à mes coordonnées sur un axe de composante principale n'est pas claire pour moi (le défaut de tout faire faire par une boite noire).
    Et je trouve pas la fonction pour le faire en mode black box.
    Je suppose que Z$tab représente Ref en coordonnées centrées normées (mais comment ?).
    Ça ne me dérange pas de passer par une autre librairie, mais si je peux éviter de me taper l'analyse à la main.

    Merci pour vos conseils

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Janvier 2012
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2012
    Messages : 325
    Par défaut
    Je sais pas si il y a une solution "boite noire" comme tu dis.
    Par contre tu as les coordonnées des vecteurs des axes principaux dans l'attribut c1 de ton objet dudi (Z$c1). Donc tu peux faire la projection "manuellement".

Discussions similaires

  1. Réponses: 1
    Dernier message: 19/06/2015, 14h00
  2. [2.x] Utiliser data FosUserBundle dans un autre projet
    Par Cyr69 dans le forum Symfony
    Réponses: 1
    Dernier message: 05/03/2014, 12h04
  3. Projet en Java/J2EE dans la finance
    Par speedster dans le forum Etudes
    Réponses: 11
    Dernier message: 16/12/2005, 23h01
  4. Réponses: 1
    Dernier message: 09/12/2005, 06h45
  5. [FLASH MX] data radio dans un fichier.as
    Par totoche dans le forum Flash
    Réponses: 10
    Dernier message: 09/11/2005, 16h28

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