SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
XLCONNECT / R2WD / RCOM




                                     www.bluestone.fr
                       55 rue du Faubourg Montmartre – 75009 Paris
                                    +33 (0)1 53 25 02 10
                                   contact@bluestone.fr
BS TEMPLATE 20121030
XLConnect

R2wd

RCOM : l’outil universel pour Microsoft




                     EXPORTS DE R VERS OFFICE   05/04/2013   2
 Plusieurs packages coexistent :
     dataframe2xls
     xlsx
     XLConnect
     …


 XLConnect présente quelques avantages :
   Traite à la fois les fichiers xls et les fichiers xlsx
   Utilise des scripts en java, ce qui ne nécessite pas en général d’installation supplémentaire
   Le package continue d’être développé et il y a de plus en plus d’options




                                            EXPORTS DE R VERS OFFICE                         05/04/2013   3
Version longue
wb <- loadWorkbook(chemin, create =         Crée un lien avec un fichier excel et éventuellement crée le fichier
TRUE)


createSheet(wb, name = "Data")              Crée un onglet Data

writeWorksheet(wb, a, sheet = "Data")       Sauve les données de a dans l’onglet Data créé

saveWorkbook(wb)                            Sauve le fichier excel


                                        Version courte
writeWorksheetToFile(chemin, data a,        Remarques :
sheet = "Data")                                      Ne permet pas de créer le fichier ni l’onglet
                                                     Pas recommandé dans le cas d’exportations multiples dans un même
                                                      fichier, car R lance plusieurs scripts en Java destinés au même fichier excel
                                                      et ça finit par bloquer, peut-être pour des raisons de synchronisation



  Les fonctions « symétriques » sont … readWorksheet / readWorksheetFromFile

                                            EXPORTS DE R VERS OFFICE                                                   05/04/2013     4
Exportations de plusieurs tables simultanément
writeWorksheet(wb, list(a,b), sheet =        Colle les tables a et b dans les onglets Data1 et Data2
c("Data1","Data2"))




                                   Choix des cellules cibles

createSheet(wb, name = "Data2")              Colle la table a dans l’onglet Data2
writeWorksheet(wb, a, sheet =
"Data2",header=F,startCol=2,startRow=2
                                             Colle les donnée à partir de la deuxième ligne et de la deuxième
)                                             colonne
                                             N’écrit pas les noms de colonnes


                       Dupplication d’onglets / Suppression du contenu
cloneSheet(wb, sheet = "Data2", name =       Duplique l’onglet Data2
"Data3")

clearSheet(wb, sheet = "Data3")              Supprime le contenu de Data3




                                             EXPORTS DE R VERS OFFICE                                     05/04/2013   5
Possibilité de modifier des formats directement sous R
wb <-                                        Exemple 1 : on change la taille des cellules dans l’onglet Data2
loadWorkbook(paste(nomDossier,"/Result
ats.xlsx",sep=""), create = FALSE)
setRowHeight(wb, sheet = "Data2", row
= 2:11, height = 30)
setColumnWidth(wb, sheet = "Data2",
column = 2:11, width = 4000)
saveWorkbook(wb)

wb <-
                                             Exemple 2 : modification de la couleur de fond dans l’onglet Data2
loadWorkbook(paste(nomDossier,"/Result
ats.xlsx",sep=""), create = FALSE)
format1 <- createCellStyle(wb)
# On veut changer la couleur de fond
...
setFillPattern(format1, fill =
XLC$"FILL.SOLID_FOREGROUND")
# ... en rouge foncé
setFillForegroundColor(format1, color
= XLC$"COLOR.DARK_RED")
# on applique ici à la première ligne
setCellStyle(wb, sheet = "Data2", row
= 2, col = 2:11,                                                  C’est (excessivement) pénible
             cellstyle = format1)
saveWorkbook(wb)

                                             EXPORTS DE R VERS OFFICE                                      05/04/2013   6
Possibilité de ne pas écraser le format de la cellule d’arrivée
wb <- loadWorkbook(chemin, create =                     Garde le format de la cellule d’arrivée… pas très chic mais ça
FALSE)                                                   marche
setStyleAction(wb,XLC$"STYLE_ACTION.NO
NE")
writeWorksheet(wb, b, sheet =
"Data2",header=F,startCol=2,startRow=2
)
saveWorkbook(wb)



                  Possibilité d’appliquer des formats enregistrés dans le fichier excel
   Il faut d’abord créer les formats que l’on souhaite dans un fichier excel
   Ensuite, on peut partir de ce fichier excel en le dupliquant avant d’écrire dedans afin de disposer des « bons » formats
wb <- loadWorkbook(chemin, create =                     Récupère le format Format1 et l’applique à la cellule choisie
FALSE)
Format1 <- getCellStyle(wd, "Format
1")
setCellStyle(w,
sheet="Data2",row=1,col=1,cellstyle=Fo
rmat1)
saveWorkbook(wb)


                                                        EXPORTS DE R VERS OFFICE                                      05/04/2013   7
XLConnect

R2wd

RCOM : l’outil universel pour Microsoft




                     EXPORTS DE R VERS OFFICE   05/04/2013   8
 Ce package est en basé sur le package RCOM, qui lui-même utilise
  l’application statconnDCOM

 Pour installer statconnDCOM :
 1.   Utiliser l’instruction du package RCOM : installstatconnDCOM(id="rcom")
 2.   Télécharger depuis le site : http://rcom.univie.ac.at/


 L’intérêt de R2wd est que ce package rend l’utilisation de RCOM facile




                                     EXPORTS DE R VERS OFFICE                   05/04/2013   9
Ouverture de word et création d’un document
wdGet()                                      Ouverture de Word
wdNewDoc("chemin/Nouveau.doc")               Création du document Nouveau.doc
wdSave()                                     Enregistrement
wdQuit()                                     Fermeture de Word



                                       Ecriture de texte
wdTitle("Titre")                             Le format Titre du document word est utilisé
wdSection("Titre 1",newpage=TRUE)            Le format Titre1 du document word est utilisé
wdSubsection("Titre 2")                      Le format Titre2 du document word est utilisé
wdSubsubsection("Titre 3")                   Le format Titre3 du document word est utilisé
wdBody("Normal")                             Le format Normal du document word est utilisé



                                             EXPORTS DE R VERS OFFICE                         05/04/2013   10
Mélanger des valeur et du texte

wdTitle(paste("Résultats du",date)




                     Coller des bouts de code R ou des sorties de console

Verbatim("ceci est mon code")




             Faire des conversion d’unités (qu’est ce que ça fait dans ce package)

wdConvert(1,"in","pt")

wdConvert(1,"pt","in")                       Peut toujours servir…

wdConvert(1,"cm","pt")




                                             EXPORTS DE R VERS OFFICE                05/04/2013   11
Export d’un graphique simple



wdPlot(1:100,1:100 )




                         Possibilité de choisir la fonction graphique




wdPlot(1:100,1:100,fun=boxplot )




                                             EXPORTS DE R VERS OFFICE   05/04/2013   12
Export de base



wdTable(a)




             On peut utiliser la fonction format() pour un formatage rapide




wdTable(format(a))




                                         EXPORTS DE R VERS OFFICE             05/04/2013   13
Gestion des lignes



wdTable(format(a),hlines=c("bt","bt","
bt","bt","bt"))




                                      Gestion des colonnes




wdTable(format(a),
hlines=c("bt","bt","bt","bt","bt"),
align=c("c", "|","c","c","c"))




                                              EXPORTS DE R VERS OFFICE   05/04/2013   14
Taille des lignes et des polices



wdTable(format(a),padding=10,pointsize
=5)




                       Formats « automatiques » autoformat = 1/2/3




                                           EXPORTS DE R VERS OFFICE   05/04/2013   15
XLConnect

R2wd

RCOM : l’outil universel pour Microsoft




                     EXPORTS DE R VERS OFFICE   05/04/2013   16
Ouverture de Word et création d’un document
comApp<-comCreateObject("Word.Application")
                                                                          Instancie une nouvelle application Word
comSetProperty(comApp,"Visible",TRUE)
                                                                          Rend Word visible
comDoc<-
comInvoke(comGetProperty(comApp,"Documents"),"Add")                       Instancie un nouveau document dans Word


                                         Ecriture de texte
comApp[["Selection"]][["Text"]]<- "Ecrire du                              Pas très ergonomique
texte…"


                                        Créer un graphique

win.metafile()
plot(density(rnorm(10000,0,1)))
dev.off()
# Etape 4: insertion graphique dans le workbook
comSelection<-comApp[["Selection"]]
docImage<-comInvoke(comSelection,"Paste")



                                            EXPORTS DE R VERS OFFICE                                                 05/04/2013   17
Ouverture de Excel et création d’un document
comApp<-comCreateObject("Excel.Application")                               Instancie une nouvelle application Excel
comSetProperty(pptApp,"Visible",TRUE)                                      Rend Excel visible
comXls<-                                                                   Instancie un nouveau document dans Excel
comInvoke(comGetProperty(comApp,"Workbooks"),"Add")




                                              Ecriture

comSheet<-comGetProperty(comXls,"Worksheets",1)

comRange<-
comGetProperty(comSheet,"Range","A1","B4")

comSetProperty(comRange,"Value",cbind(c(11:14),c(15
:18)))




                                             EXPORTS DE R VERS OFFICE                                                  05/04/2013   18
Ouverture de PowerPoint et création d’un document
comApp<-comCreateObject("PowerPoint.Application")                       Instancie une nouvelle application PowerPoint
comSetProperty(comApp,"Visible",TRUE)                                   Rend PowerPoint visible
pptPresentation<-                                                       Instancie un nouveau document dans
comInvoke(pptApp[["Presentations"]],"Add",-1)
                                                                         PowerPoint
pptSlides<-comGetProperty(pptPresentation,"Slides")

                                           Ecriture

pptCurrSlide<-comInvoke(pptSlides,"Add",1,11)

pptShapes<-pptCurrSlide[["Shapes"]]

pptCurrShape[["TextFrame"]][["TextRange"]][["Text"]
]<- "Slide créée depuis R"




                                          EXPORTS DE R VERS OFFICE                                              05/04/2013   19

Contenu connexe

Tendances

Nettoyer et transformer ses données avec Openrefine : partie 2
Nettoyer et transformer ses données avec Openrefine : partie 2Nettoyer et transformer ses données avec Openrefine : partie 2
Nettoyer et transformer ses données avec Openrefine : partie 2Mathieu Saby
 
Cours de C++, en français, 2002 - Cours 3.5
Cours de C++, en français, 2002 - Cours 3.5Cours de C++, en français, 2002 - Cours 3.5
Cours de C++, en français, 2002 - Cours 3.5Laurent BUNIET
 
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...Mathieu Saby
 
Aide mémoire Openrefine 3.3 béta
Aide mémoire Openrefine 3.3 béta Aide mémoire Openrefine 3.3 béta
Aide mémoire Openrefine 3.3 béta Mathieu Saby
 
BigData_TP5 : Neo4J
BigData_TP5 : Neo4JBigData_TP5 : Neo4J
BigData_TP5 : Neo4JLilia Sfaxi
 
Intégration des données avec Talend ETL
Intégration des données avec Talend ETLIntégration des données avec Talend ETL
Intégration des données avec Talend ETLLilia Sfaxi
 
Spark, ou comment traiter des données à la vitesse de l'éclair
Spark, ou comment traiter des données à la vitesse de l'éclairSpark, ou comment traiter des données à la vitesse de l'éclair
Spark, ou comment traiter des données à la vitesse de l'éclairAlexis Seigneurin
 
Première approche de cartographie sous R
Première approche de cartographie sous RPremière approche de cartographie sous R
Première approche de cartographie sous RCdiscount
 
Bases de données Spatiales - POSTGIS
Bases de données Spatiales - POSTGISBases de données Spatiales - POSTGIS
Bases de données Spatiales - POSTGISOmar El Kharki
 
Mix it 2011 - Clojure
Mix it 2011 - ClojureMix it 2011 - Clojure
Mix it 2011 - Clojurelolopetit
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScriptAbdoulaye Dieng
 
.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHPAbdoulaye Dieng
 
BigData_TP4 : Cassandra
BigData_TP4 : CassandraBigData_TP4 : Cassandra
BigData_TP4 : CassandraLilia Sfaxi
 
Zend Framework 2
Zend Framework 2Zend Framework 2
Zend Framework 2epixelic
 
Apache Flink par Bilal Baltagi Paris Spark Meetup Dec 2015
Apache Flink par Bilal Baltagi Paris Spark Meetup Dec 2015Apache Flink par Bilal Baltagi Paris Spark Meetup Dec 2015
Apache Flink par Bilal Baltagi Paris Spark Meetup Dec 2015Modern Data Stack France
 
SSL 2011 : Présentation de 2 bases noSQL
SSL 2011 : Présentation de 2 bases noSQLSSL 2011 : Présentation de 2 bases noSQL
SSL 2011 : Présentation de 2 bases noSQLHervé Leclerc
 

Tendances (19)

Nettoyer et transformer ses données avec Openrefine : partie 2
Nettoyer et transformer ses données avec Openrefine : partie 2Nettoyer et transformer ses données avec Openrefine : partie 2
Nettoyer et transformer ses données avec Openrefine : partie 2
 
Cours de C++, en français, 2002 - Cours 3.5
Cours de C++, en français, 2002 - Cours 3.5Cours de C++, en français, 2002 - Cours 3.5
Cours de C++, en français, 2002 - Cours 3.5
 
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
 
Aide mémoire Openrefine 3.3 béta
Aide mémoire Openrefine 3.3 béta Aide mémoire Openrefine 3.3 béta
Aide mémoire Openrefine 3.3 béta
 
BigData_TP5 : Neo4J
BigData_TP5 : Neo4JBigData_TP5 : Neo4J
BigData_TP5 : Neo4J
 
Intégration des données avec Talend ETL
Intégration des données avec Talend ETLIntégration des données avec Talend ETL
Intégration des données avec Talend ETL
 
mix-it 2011
mix-it 2011mix-it 2011
mix-it 2011
 
Spark, ou comment traiter des données à la vitesse de l'éclair
Spark, ou comment traiter des données à la vitesse de l'éclairSpark, ou comment traiter des données à la vitesse de l'éclair
Spark, ou comment traiter des données à la vitesse de l'éclair
 
Première approche de cartographie sous R
Première approche de cartographie sous RPremière approche de cartographie sous R
Première approche de cartographie sous R
 
Bases de données Spatiales - POSTGIS
Bases de données Spatiales - POSTGISBases de données Spatiales - POSTGIS
Bases de données Spatiales - POSTGIS
 
Mix it 2011 - Clojure
Mix it 2011 - ClojureMix it 2011 - Clojure
Mix it 2011 - Clojure
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScript
 
Spark dataframe
Spark dataframeSpark dataframe
Spark dataframe
 
.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP.php1 : les fondamentaux du PHP
.php1 : les fondamentaux du PHP
 
BigData_TP4 : Cassandra
BigData_TP4 : CassandraBigData_TP4 : Cassandra
BigData_TP4 : Cassandra
 
Zend Framework 2
Zend Framework 2Zend Framework 2
Zend Framework 2
 
Apache Flink par Bilal Baltagi Paris Spark Meetup Dec 2015
Apache Flink par Bilal Baltagi Paris Spark Meetup Dec 2015Apache Flink par Bilal Baltagi Paris Spark Meetup Dec 2015
Apache Flink par Bilal Baltagi Paris Spark Meetup Dec 2015
 
Php 5.3
Php 5.3Php 5.3
Php 5.3
 
SSL 2011 : Présentation de 2 bases noSQL
SSL 2011 : Présentation de 2 bases noSQLSSL 2011 : Présentation de 2 bases noSQL
SSL 2011 : Présentation de 2 bases noSQL
 

En vedette

Introduction à la cartographie avec R
Introduction à la cartographie avec RIntroduction à la cartographie avec R
Introduction à la cartographie avec RCdiscount
 
Parallel R in snow (english after 2nd slide)
Parallel R in snow (english after 2nd slide)Parallel R in snow (english after 2nd slide)
Parallel R in snow (english after 2nd slide)Cdiscount
 
Premier pas de web scrapping avec R
Premier pas de  web scrapping avec RPremier pas de  web scrapping avec R
Premier pas de web scrapping avec RCdiscount
 
R aux enquêtes de conjoncture
R aux enquêtes de conjonctureR aux enquêtes de conjoncture
R aux enquêtes de conjoncturefrancoismarical
 
Incorporer du C dans R, créer son package
Incorporer du C dans R, créer son packageIncorporer du C dans R, créer son package
Incorporer du C dans R, créer son packageCdiscount
 
Dataiku r users group v2
Dataiku   r users group v2Dataiku   r users group v2
Dataiku r users group v2Cdiscount
 
FLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretFLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretjfeudeline
 
Cartographie - Introduction générale
Cartographie - Introduction généraleCartographie - Introduction générale
Cartographie - Introduction généraleNicolas Boonaert
 
RStudio is good for you
RStudio is good for youRStudio is good for you
RStudio is good for youCdiscount
 
Cartographie avec igraph sous R (Partie 2)
Cartographie avec igraph sous R (Partie 2)Cartographie avec igraph sous R (Partie 2)
Cartographie avec igraph sous R (Partie 2)Cdiscount
 
Cartographie avec igraph sous R (Partie 1)
Cartographie avec igraph sous R (Partie 1) Cartographie avec igraph sous R (Partie 1)
Cartographie avec igraph sous R (Partie 1) Cdiscount
 
Comptabilité Nationale avec R
Comptabilité Nationale avec RComptabilité Nationale avec R
Comptabilité Nationale avec RCdiscount
 
Add plots and images into a PowerPoint document from R software
Add plots and images into a PowerPoint document from R softwareAdd plots and images into a PowerPoint document from R software
Add plots and images into a PowerPoint document from R softwarekassambara
 
Create a Powerpoint using R software and ReporteRs package
Create a Powerpoint using R software and ReporteRs packageCreate a Powerpoint using R software and ReporteRs package
Create a Powerpoint using R software and ReporteRs packagekassambara
 
Create a PowerPoint document from template using R software and ReporteRs pac...
Create a PowerPoint document from template using R software and ReporteRs pac...Create a PowerPoint document from template using R software and ReporteRs pac...
Create a PowerPoint document from template using R software and ReporteRs pac...kassambara
 

En vedette (20)

Introduction à la cartographie avec R
Introduction à la cartographie avec RIntroduction à la cartographie avec R
Introduction à la cartographie avec R
 
Parallel R in snow (english after 2nd slide)
Parallel R in snow (english after 2nd slide)Parallel R in snow (english after 2nd slide)
Parallel R in snow (english after 2nd slide)
 
Premier pas de web scrapping avec R
Premier pas de  web scrapping avec RPremier pas de  web scrapping avec R
Premier pas de web scrapping avec R
 
R aux enquêtes de conjoncture
R aux enquêtes de conjonctureR aux enquêtes de conjoncture
R aux enquêtes de conjoncture
 
R in latex
R in latexR in latex
R in latex
 
HADOOP + R
HADOOP + RHADOOP + R
HADOOP + R
 
Incorporer du C dans R, créer son package
Incorporer du C dans R, créer son packageIncorporer du C dans R, créer son package
Incorporer du C dans R, créer son package
 
Big data with r
Big data with rBig data with r
Big data with r
 
Dataiku r users group v2
Dataiku   r users group v2Dataiku   r users group v2
Dataiku r users group v2
 
Gur1009
Gur1009Gur1009
Gur1009
 
R versur Python
R versur PythonR versur Python
R versur Python
 
FLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretFLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caret
 
Cartographie - Introduction générale
Cartographie - Introduction généraleCartographie - Introduction générale
Cartographie - Introduction générale
 
RStudio is good for you
RStudio is good for youRStudio is good for you
RStudio is good for you
 
Cartographie avec igraph sous R (Partie 2)
Cartographie avec igraph sous R (Partie 2)Cartographie avec igraph sous R (Partie 2)
Cartographie avec igraph sous R (Partie 2)
 
Cartographie avec igraph sous R (Partie 1)
Cartographie avec igraph sous R (Partie 1) Cartographie avec igraph sous R (Partie 1)
Cartographie avec igraph sous R (Partie 1)
 
Comptabilité Nationale avec R
Comptabilité Nationale avec RComptabilité Nationale avec R
Comptabilité Nationale avec R
 
Add plots and images into a PowerPoint document from R software
Add plots and images into a PowerPoint document from R softwareAdd plots and images into a PowerPoint document from R software
Add plots and images into a PowerPoint document from R software
 
Create a Powerpoint using R software and ReporteRs package
Create a Powerpoint using R software and ReporteRs packageCreate a Powerpoint using R software and ReporteRs package
Create a Powerpoint using R software and ReporteRs package
 
Create a PowerPoint document from template using R software and ReporteRs pac...
Create a PowerPoint document from template using R software and ReporteRs pac...Create a PowerPoint document from template using R software and ReporteRs pac...
Create a PowerPoint document from template using R software and ReporteRs pac...
 

Similaire à Exports de r vers office

Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de donnéesISIG
 
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -introNosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -introOlivier Mallassi
 
Affichage d'un document Office sous Android
Affichage d'un document Office sous AndroidAffichage d'un document Office sous Android
Affichage d'un document Office sous AndroidStéphane Liétard
 
Activity
ActivityActivity
Activitydido
 
Les nouveautés du Framework .NET 4.5
Les nouveautés du Framework .NET 4.5Les nouveautés du Framework .NET 4.5
Les nouveautés du Framework .NET 4.5Microsoft
 
Fmin103 0910 tpjdbc
Fmin103 0910 tpjdbcFmin103 0910 tpjdbc
Fmin103 0910 tpjdbcKarim Amane
 
Livres sas integrale
Livres sas integraleLivres sas integrale
Livres sas integraleMaodo HOTT
 
Génération de documents Office avec Open XML et VSTO
Génération de documents Office avec Open XML et VSTOGénération de documents Office avec Open XML et VSTO
Génération de documents Office avec Open XML et VSTOguested7f6
 
L’environnement de programmation fonctionnelle DrRacket
L’environnement de programmation fonctionnelle DrRacketL’environnement de programmation fonctionnelle DrRacket
L’environnement de programmation fonctionnelle DrRacketStéphane Legrand
 
xml_bd_ouahdikrid.ppt
xml_bd_ouahdikrid.pptxml_bd_ouahdikrid.ppt
xml_bd_ouahdikrid.pptLeilaAmrane
 
Présentation Logiciel R.pptx
Présentation Logiciel R.pptxPrésentation Logiciel R.pptx
Présentation Logiciel R.pptxssusera0d0e81
 
Vbisigk
VbisigkVbisigk
VbisigkISIG
 
Création de Services et Configuration du ESB avec TalendESB
Création de Services et Configuration du ESB avec TalendESBCréation de Services et Configuration du ESB avec TalendESB
Création de Services et Configuration du ESB avec TalendESBLilia Sfaxi
 

Similaire à Exports de r vers office (20)

Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de données
 
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -introNosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
Nosql, hadoop, map reduce, hbase, sqoop, voldemort, cassandra -intro
 
Affichage d'un document Office sous Android
Affichage d'un document Office sous AndroidAffichage d'un document Office sous Android
Affichage d'un document Office sous Android
 
100%la tex beamer
100%la tex beamer100%la tex beamer
100%la tex beamer
 
Activity
ActivityActivity
Activity
 
Les nouveautés du Framework .NET 4.5
Les nouveautés du Framework .NET 4.5Les nouveautés du Framework .NET 4.5
Les nouveautés du Framework .NET 4.5
 
Fmin103 0910 tpjdbc
Fmin103 0910 tpjdbcFmin103 0910 tpjdbc
Fmin103 0910 tpjdbc
 
Livres sas integrale
Livres sas integraleLivres sas integrale
Livres sas integrale
 
Génération de documents Office avec Open XML et VSTO
Génération de documents Office avec Open XML et VSTOGénération de documents Office avec Open XML et VSTO
Génération de documents Office avec Open XML et VSTO
 
Sql &amp; excel
Sql &amp; excelSql &amp; excel
Sql &amp; excel
 
L’environnement de programmation fonctionnelle DrRacket
L’environnement de programmation fonctionnelle DrRacketL’environnement de programmation fonctionnelle DrRacket
L’environnement de programmation fonctionnelle DrRacket
 
Org mode pour LaTeXiens
Org mode pour LaTeXiensOrg mode pour LaTeXiens
Org mode pour LaTeXiens
 
Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015Compte rendu Blend Web Mix 2015
Compte rendu Blend Web Mix 2015
 
xml_bd_ouahdikrid.ppt
xml_bd_ouahdikrid.pptxml_bd_ouahdikrid.ppt
xml_bd_ouahdikrid.ppt
 
Présentation Logiciel R.pptx
Présentation Logiciel R.pptxPrésentation Logiciel R.pptx
Présentation Logiciel R.pptx
 
Introduction aspnet
Introduction aspnetIntroduction aspnet
Introduction aspnet
 
Vbisigk
VbisigkVbisigk
Vbisigk
 
Hive ppt (1)
Hive ppt (1)Hive ppt (1)
Hive ppt (1)
 
Une Introduction à R
Une Introduction à RUne Introduction à R
Une Introduction à R
 
Création de Services et Configuration du ESB avec TalendESB
Création de Services et Configuration du ESB avec TalendESBCréation de Services et Configuration du ESB avec TalendESB
Création de Services et Configuration du ESB avec TalendESB
 

Exports de r vers office

  • 1. XLCONNECT / R2WD / RCOM www.bluestone.fr 55 rue du Faubourg Montmartre – 75009 Paris +33 (0)1 53 25 02 10 contact@bluestone.fr BS TEMPLATE 20121030
  • 2. XLConnect R2wd RCOM : l’outil universel pour Microsoft EXPORTS DE R VERS OFFICE 05/04/2013 2
  • 3.  Plusieurs packages coexistent :  dataframe2xls  xlsx  XLConnect  …  XLConnect présente quelques avantages :  Traite à la fois les fichiers xls et les fichiers xlsx  Utilise des scripts en java, ce qui ne nécessite pas en général d’installation supplémentaire  Le package continue d’être développé et il y a de plus en plus d’options EXPORTS DE R VERS OFFICE 05/04/2013 3
  • 4. Version longue wb <- loadWorkbook(chemin, create =  Crée un lien avec un fichier excel et éventuellement crée le fichier TRUE) createSheet(wb, name = "Data")  Crée un onglet Data writeWorksheet(wb, a, sheet = "Data")  Sauve les données de a dans l’onglet Data créé saveWorkbook(wb)  Sauve le fichier excel Version courte writeWorksheetToFile(chemin, data a,  Remarques : sheet = "Data")  Ne permet pas de créer le fichier ni l’onglet  Pas recommandé dans le cas d’exportations multiples dans un même fichier, car R lance plusieurs scripts en Java destinés au même fichier excel et ça finit par bloquer, peut-être pour des raisons de synchronisation Les fonctions « symétriques » sont … readWorksheet / readWorksheetFromFile EXPORTS DE R VERS OFFICE 05/04/2013 4
  • 5. Exportations de plusieurs tables simultanément writeWorksheet(wb, list(a,b), sheet =  Colle les tables a et b dans les onglets Data1 et Data2 c("Data1","Data2")) Choix des cellules cibles createSheet(wb, name = "Data2")  Colle la table a dans l’onglet Data2 writeWorksheet(wb, a, sheet = "Data2",header=F,startCol=2,startRow=2  Colle les donnée à partir de la deuxième ligne et de la deuxième ) colonne  N’écrit pas les noms de colonnes Dupplication d’onglets / Suppression du contenu cloneSheet(wb, sheet = "Data2", name =  Duplique l’onglet Data2 "Data3") clearSheet(wb, sheet = "Data3")  Supprime le contenu de Data3 EXPORTS DE R VERS OFFICE 05/04/2013 5
  • 6. Possibilité de modifier des formats directement sous R wb <-  Exemple 1 : on change la taille des cellules dans l’onglet Data2 loadWorkbook(paste(nomDossier,"/Result ats.xlsx",sep=""), create = FALSE) setRowHeight(wb, sheet = "Data2", row = 2:11, height = 30) setColumnWidth(wb, sheet = "Data2", column = 2:11, width = 4000) saveWorkbook(wb) wb <-  Exemple 2 : modification de la couleur de fond dans l’onglet Data2 loadWorkbook(paste(nomDossier,"/Result ats.xlsx",sep=""), create = FALSE) format1 <- createCellStyle(wb) # On veut changer la couleur de fond ... setFillPattern(format1, fill = XLC$"FILL.SOLID_FOREGROUND") # ... en rouge foncé setFillForegroundColor(format1, color = XLC$"COLOR.DARK_RED") # on applique ici à la première ligne setCellStyle(wb, sheet = "Data2", row = 2, col = 2:11, C’est (excessivement) pénible cellstyle = format1) saveWorkbook(wb) EXPORTS DE R VERS OFFICE 05/04/2013 6
  • 7. Possibilité de ne pas écraser le format de la cellule d’arrivée wb <- loadWorkbook(chemin, create =  Garde le format de la cellule d’arrivée… pas très chic mais ça FALSE) marche setStyleAction(wb,XLC$"STYLE_ACTION.NO NE") writeWorksheet(wb, b, sheet = "Data2",header=F,startCol=2,startRow=2 ) saveWorkbook(wb) Possibilité d’appliquer des formats enregistrés dans le fichier excel  Il faut d’abord créer les formats que l’on souhaite dans un fichier excel  Ensuite, on peut partir de ce fichier excel en le dupliquant avant d’écrire dedans afin de disposer des « bons » formats wb <- loadWorkbook(chemin, create =  Récupère le format Format1 et l’applique à la cellule choisie FALSE) Format1 <- getCellStyle(wd, "Format 1") setCellStyle(w, sheet="Data2",row=1,col=1,cellstyle=Fo rmat1) saveWorkbook(wb) EXPORTS DE R VERS OFFICE 05/04/2013 7
  • 8. XLConnect R2wd RCOM : l’outil universel pour Microsoft EXPORTS DE R VERS OFFICE 05/04/2013 8
  • 9.  Ce package est en basé sur le package RCOM, qui lui-même utilise l’application statconnDCOM  Pour installer statconnDCOM : 1. Utiliser l’instruction du package RCOM : installstatconnDCOM(id="rcom") 2. Télécharger depuis le site : http://rcom.univie.ac.at/  L’intérêt de R2wd est que ce package rend l’utilisation de RCOM facile EXPORTS DE R VERS OFFICE 05/04/2013 9
  • 10. Ouverture de word et création d’un document wdGet()  Ouverture de Word wdNewDoc("chemin/Nouveau.doc")  Création du document Nouveau.doc wdSave()  Enregistrement wdQuit()  Fermeture de Word Ecriture de texte wdTitle("Titre")  Le format Titre du document word est utilisé wdSection("Titre 1",newpage=TRUE)  Le format Titre1 du document word est utilisé wdSubsection("Titre 2")  Le format Titre2 du document word est utilisé wdSubsubsection("Titre 3")  Le format Titre3 du document word est utilisé wdBody("Normal")  Le format Normal du document word est utilisé EXPORTS DE R VERS OFFICE 05/04/2013 10
  • 11. Mélanger des valeur et du texte wdTitle(paste("Résultats du",date) Coller des bouts de code R ou des sorties de console Verbatim("ceci est mon code") Faire des conversion d’unités (qu’est ce que ça fait dans ce package) wdConvert(1,"in","pt") wdConvert(1,"pt","in")  Peut toujours servir… wdConvert(1,"cm","pt") EXPORTS DE R VERS OFFICE 05/04/2013 11
  • 12. Export d’un graphique simple wdPlot(1:100,1:100 ) Possibilité de choisir la fonction graphique wdPlot(1:100,1:100,fun=boxplot ) EXPORTS DE R VERS OFFICE 05/04/2013 12
  • 13. Export de base wdTable(a) On peut utiliser la fonction format() pour un formatage rapide wdTable(format(a)) EXPORTS DE R VERS OFFICE 05/04/2013 13
  • 14. Gestion des lignes wdTable(format(a),hlines=c("bt","bt"," bt","bt","bt")) Gestion des colonnes wdTable(format(a), hlines=c("bt","bt","bt","bt","bt"), align=c("c", "|","c","c","c")) EXPORTS DE R VERS OFFICE 05/04/2013 14
  • 15. Taille des lignes et des polices wdTable(format(a),padding=10,pointsize =5) Formats « automatiques » autoformat = 1/2/3 EXPORTS DE R VERS OFFICE 05/04/2013 15
  • 16. XLConnect R2wd RCOM : l’outil universel pour Microsoft EXPORTS DE R VERS OFFICE 05/04/2013 16
  • 17. Ouverture de Word et création d’un document comApp<-comCreateObject("Word.Application")  Instancie une nouvelle application Word comSetProperty(comApp,"Visible",TRUE)  Rend Word visible comDoc<- comInvoke(comGetProperty(comApp,"Documents"),"Add")  Instancie un nouveau document dans Word Ecriture de texte comApp[["Selection"]][["Text"]]<- "Ecrire du  Pas très ergonomique texte…" Créer un graphique win.metafile() plot(density(rnorm(10000,0,1))) dev.off() # Etape 4: insertion graphique dans le workbook comSelection<-comApp[["Selection"]] docImage<-comInvoke(comSelection,"Paste") EXPORTS DE R VERS OFFICE 05/04/2013 17
  • 18. Ouverture de Excel et création d’un document comApp<-comCreateObject("Excel.Application")  Instancie une nouvelle application Excel comSetProperty(pptApp,"Visible",TRUE)  Rend Excel visible comXls<-  Instancie un nouveau document dans Excel comInvoke(comGetProperty(comApp,"Workbooks"),"Add") Ecriture comSheet<-comGetProperty(comXls,"Worksheets",1) comRange<- comGetProperty(comSheet,"Range","A1","B4") comSetProperty(comRange,"Value",cbind(c(11:14),c(15 :18))) EXPORTS DE R VERS OFFICE 05/04/2013 18
  • 19. Ouverture de PowerPoint et création d’un document comApp<-comCreateObject("PowerPoint.Application")  Instancie une nouvelle application PowerPoint comSetProperty(comApp,"Visible",TRUE)  Rend PowerPoint visible pptPresentation<-  Instancie un nouveau document dans comInvoke(pptApp[["Presentations"]],"Add",-1) PowerPoint pptSlides<-comGetProperty(pptPresentation,"Slides") Ecriture pptCurrSlide<-comInvoke(pptSlides,"Add",1,11) pptShapes<-pptCurrSlide[["Shapes"]] pptCurrShape[["TextFrame"]][["TextRange"]][["Text"] ]<- "Slide créée depuis R" EXPORTS DE R VERS OFFICE 05/04/2013 19