Passer un tableau de résultats de R à excel

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Simon Brégand
Messages : 21
Enregistré le : 07 Juin 2007, 06:06

Passer un tableau de résultats de R à excel

Messagepar Simon Brégand » 27 Juin 2007, 15:33

Bonjour à tous,
Mes individus sont des palmiers et mes variables sont les longueurs d'onde, j'ai fait une acp (avec ade4).
J'aimerais maintenant tracer les graphes des vecteurs propres dans la base des longueurs d'onde (donc mes variables).
Pour cela je peux récupérer mes vecteurs propres par acp$c1 : c'est ce résultat que j'aimerais récupérer sous excel pour faire mon graph.
Je ne sais pas si j'ai été bien clair ou même si c'est possible en tout cas merci d'avance pour vos propositions !
Simon

Nicolas Péru
Messages : 1408
Enregistré le : 07 Aoû 2006, 08:13

Messagepar Nicolas Péru » 27 Juin 2007, 15:54

Salut,

J'aimerais maintenant tracer les graphes des vecteurs propres dans la base des longueurs d'onde (donc mes variables).

je ne comprend pas bien où tu veux aller ni d'ailleurs exactement ce que tu veux. ta base des longueurs d'onde n'est certainement pas une base orthonormée alors ça va être très très dur à représenter ...

Pour cela je peux récupérer mes vecteurs propres par acp$c1

Alors je peux me tromper car cela fait un moment que je n'ai pas regardéces questions de cuisine dans les analyses multivariées. Mais d'après mes vagues souvenirs de diagonalisation de matrice et avec les sortie de R, acp$c1 ne représente pas du tout les vecteurs propres mais les coordonnées des variables dans la nouvelle base orthonormée calculée à partir des valeurs propres. Les vecteurs propres servant à définir les axes de cette base orthonormée à p (nombre de variables de ton ACP) axes.

Peut être peux tu nous dire ce que tu cherches à illustrer que ce soit en terme de concept de l'ACP ou une mise en évidence de quelque chose dans tes données...c'est une suggestion :)

Simon Brégand
Messages : 21
Enregistré le : 07 Juin 2007, 06:06

Messagepar Simon Brégand » 28 Juin 2007, 07:54

Bonjour,
Je craignais de ne pas être bien clair... désolé ! J'essaie de reformuler.
J'ai 140 variables (LO) et j'aimerais savoir lesquels sont les plus importantes. J'ai remarqué dans des articles une représentation apparamment type et j'aimerais la réaliser (style montagne russe avec les variables en abscisse). J'ai tracé vite fait sur paint un petit exemple peut-être voyez-vous ce que je veux obtenir ?
Simon[/img]

Nicolas Péru
Messages : 1408
Enregistré le : 07 Aoû 2006, 08:13

Messagepar Nicolas Péru » 28 Juin 2007, 08:16

J'ai 140 variables (LO) et j'aimerais savoir lesquels sont les plus importantes


Pour cela, il faut regarder quelles variables structurent ton nuage de point. Avec un s.arrow tu devrais pourvoir voirplus clairement comment les variables sont corrélées aux axes. Ceci c'est pour une première approche graphique et sinon tu peux regarder la fonction inertia.dudi avec les notamment les options inertia.row (pour les lignes) et inertia.col (pour les variables)...il me semble que c'est ça...regardes dans l'aide de la fonction :)


Ton graphique ne s'affiche pas chez moi ;)

@+

Romain François
Messages : 42
Enregistré le : 08 Déc 2005, 19:23
Contact :

Messagepar Romain François » 28 Juin 2007, 08:19

Bonjour,

Dans R, peut etre que matplot peut faire ce type de representation. Peut etre un petit tour sur ce site peut donner des idees: http://addictedtor.free.fr/graphiques
Ca me rapelle aussi ce que fais jean francois durand: http://www.math.univ-montp2.fr/~durand/

Sinon, pour repondre a la question, une facon facile d'exporter des donnees vers Excel est d'utiliser le "clipboard". Par exemple:

Code : Tout sélectionner

write.table( iris, file = "clipboard", sep = "\t")


Dans l'autre direction on peut utiliser read.table avec le clipboard.
Sinon, le package xlsReadWrite permet un echange un peu plus flexible avec Excel.

HTH,

Romain
--
Romain François
Consultant R Indépendant
http://romainfrancois.blog.free.fr

Simon Brégand
Messages : 21
Enregistré le : 07 Juin 2007, 06:06

Messagepar Simon Brégand » 28 Juin 2007, 14:20

J'aimerais également sous ade4 avoir en sortie les vecteurs propres... est ce que c'est possible ?

Logez Maxime
Messages : 3138
Enregistré le : 26 Sep 2006, 11:35

Messagepar Logez Maxime » 28 Juin 2007, 16:55

Re,


Ce n'est pas très difficile a récupérer, un coup de cov pour récupérer la matrice de variance covariance de ton tableau transformé (le $tab) et tu utilises la fonction eigen tu devrais retrouver les valeurs propres ($eig) et en plus les vecteurs propres.

Après réflexion, ne pas tenir compte de ce qu'il y a dessus, c'était une c....... ! Il faut faire le produit du transposé de $tab avec $tab sans oublier les pondérations des lignes et des colonnes, ceci pour toutes les types d'analyses multivariées (a un tableau ...) :

Code : Tout sélectionner

library(ade4)
data(doubs)
acp1 <- dudi.pca(doubs$mil,scannf=FALSE,nf=2)
pc <- t(acp1$tab)%*%diag(acp1$lw)%*%as.matrix(acp1$tab)%*%diag(acp1$cw)
eigen(pc)$values
[1] 6.321624098 2.231595827 1.004203842 0.500679947 0.375183255 0.247967596 0.166467787 0.107160713 0.023544131 0.017259075 0.004313729
acp1$eig
[1] 6.321624098 2.231595827 1.004203842 0.500679947 0.375183255 0.247967596 0.166467787 0.107160713 0.023544131 0.017259075 0.004313729
# pour les vecteurs propres :
eigen(pc)$vectors


Mea culpa ! On ferait des fois mieux de réfléchier avant de poster une bêtise.

Maxime


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité