exporter une liste sur 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

anthony payoux
Messages : 17
Enregistré le : 03 Jan 2017, 18:03

exporter une liste sur excel

Messagepar anthony payoux » 15 Fév 2017, 20:54

Bonjour,


J' ai une liste "data" de 500 éléments. Je voudrais exporter ces éléments sur excel. J'arrive assez bien à exporter sur excel mais dans ce cas, j'ai quelques difficultés.

Je voudrais écrire sur la même page, data$V1, data$V2,......data$V500. J'ai essayé de faire une boucle avec la fonction write.xlsx() mais ça reste un échec...

Serge Rapenne
Messages : 1426
Enregistré le : 20 Aoû 2007, 15:17
Contact :

Re: exporter une liste sur excel

Messagepar Serge Rapenne » 15 Fév 2017, 23:03

Bonjour,

je ne comprend pas l'utilité d'une boucle, la fonction write.xlsx() permet d'enregister un data.frame en une seul passe.

tu transformes la liste avec as.data.frame puis tu la transpose pour avoir tes valeurs en colonnes et enfin tu sauvegardes :

Code : Tout sélectionner

write.xlsx(x = t(as.data.frame(la_liste)), file = "test.excelfile.xlsx",
        sheetName = "mes_donnees", row.names = FALSE)


et ça devrait rouler

Serge

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

Re: exporter une liste sur excel

Messagepar Logez Maxime » 16 Fév 2017, 09:19

Bonjour,

Si tous les éléments de ta liste ont la même longueur alors la solution de Serge est effectivement la plus simple. Si ce n'est pas le cas tu peux utiliser la librairie XLConnect qui te permet via la fonction writeWorksheet de spécifier exactement l'endroit de la feuille excel ou exporter tes données. Il y a peut-être plus simple mais je ne connais pas les autres possibilités d'interagir avec Excel.

Le seul truc pénible c'est qu'elle dépend de la librairie rjava qui elle même dépend de Java JDK 1.2 (ou plus). Une fois tout ça installer ça fonctionne assez bien.

Code : Tout sélectionner

# création du classeur excel
wb <- loadWorkbook("Export.xls", create = TRUE)
# création d'une feuille dans le classeur
createSheet(wb, name = "Feuil1")
# export des éléments de la liste :
for (i in seq_along(data)) {
  writeWorksheet(wb, data[i], sheet = "Feuil1", startcol = i)
}
saveWorkbook(wb)
Cordialement,
Maxime


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité