• Aucun résultat trouvé

Sweave: l’insertion de code R dans L

N/A
N/A
Protected

Academic year: 2022

Partager "Sweave: l’insertion de code R dans L"

Copied!
14
0
0

Texte intégral

(1)

Sweave: l’insertion de code R dans L

A

TEX ...

... ou OpenOffice (avec odfWeave)

Loic PONGER

CNRS UMR 7196 MNHN USM0503 - INSERM U565

(2)

Sweave

Sweave permet de m´elanger des commandes R et les r´esultats de ces commandes (donn´ees, tables, figures) dans du texte pour g´en´erer automatiquement des documents. Le syst`eme original de mise en page est LATEX mais il existe ´egalement une biblioth`eque pour int´egrer des commandes R dans OpenOffice.

(3)

Le principe

1. On ´edite un fichier LATEX incluant des morceaux de code R (fichier sweave, extension : .rnw, .Rnw, .snw, .Snw)

2. Le fichier contenant le code sweave+LATEX est compil´e par R pour g´en´erer un fichier LATEX (extension : .tex)

3. Le fichier LATEX est compil´e par pdflatexpour g´en´erer un fichier en pdf

(4)

Un ´ editeur L

A

TEX facilitant la compilation de fichiers sweave

1. texmaker, lyx 2. emacs 3. r-studio 4. ...

(5)

Un morceau de code

Les commandes R sont incluse entre deux balises qui d´efinissent un

”chunk” :

<<chunk1, echo=T>>=

A=2+2 A

@

Tous les morceaux de codes font partie de la mˆeme session de R.

Les variables cr´e´ees dans un morceau de code sont connues des morceaux suivants. ¡¡chunk2, echo=T¿¿= A-2 @

(6)

La compilation des fichiers sweave

I En ligne de commande dans le shell (*nix) : R CMD Sweave monfichier.rnw

pdflatex monfichier.tex

I Dans R :

Sweave("monfichier.rnw") library(tools)

texi2dvi("monfichier.tex")

I Dans le logiciel d’´edition LATEX :

I texmaker, lyx

I r-studio

I emacs

I ...

(7)

Les options des morceaux de code

I label : permet de rappeler un morceau de code, permet de nommer les figures

I echo : TRUE/FALSE, affichage des commandes

I fig : TRUE/FALSE, cr´eation d’une figure

I results : verbatim/hide/tex, affichage du r´esultat des commandes

(8)

Les options g´ en´ erales

C’est options sont modifi´ee par des commandes LATEX :

\setkeys{Gin}{width=0.75\textwidth

\SweaveOpts{prefix.string=foo/bar}

\SweaveOpts{keep.source=TRUE}

(9)

L’insertion de r´ esultats R dans du texte

La racine carr´ee de 3 vaut \Sexpr{round(sqrt(3), 3)}.

(10)

Les figures

\begin{figure}

\begin{center}

<<label=fig1,fig=TRUE,echo=FALSE>>=

hist(rnorm(1000,0,1)

@

\end{center}

\caption{Scatter Plot with Regression Line}

\label{fig:one}

\end{figure}

(11)

Les tables

L’installation de la bibliothquextable: install.packages("xtable")

Utilisation de la commandextableet l’optionresults=tex:

<<results=tex>>=

library(xtable) x <- rnorm(100)

y <- 4 + 3 * x + rnorm(100, 0, 2) lmodel <- lm(y ~ x)

lan <- anova(lmodel)

xtable(lmodel, caption = "La l´egende.", label = "tab:coef" )

@

Il est possible de faire r´ef´erence `a la table en utilisant le code

\ref{tab:coef}dans le code LATEX.

(12)

Sweave cache

La biblioth`eque cacheSweavepermet de mettre en m´emoire les r´esulats de compilations pr´ec´edentes et de ne retraiter le code que s’il a ´et´e modifi´e :

I Installation de la biblioth`eque :

R CMD INSTALL cacheSweave...gz

(13)

Sweave cache

I Ecriture des chunks avec l’option cache:

<<AA,cache=T>>=

A=10

Sys.sleep(A)

@

I Compilation dans R : library(cacheSweave)

Sweave("monfichier.rnw", driver = cacheSweaveDriver) library(tools)

texi2dvi("monfichier.tex") Effets secondaires : keep.source, sortie, ...

(14)

Pour aller plus loin

I pgfSweave : vitesse et qualit´e des figures

I weaver : cache

I knitr : ”Elegant, flexible and fast dynamic report generation with R” (merci `a Denis Teysseyre)

Références

Documents relatifs

attach(x) place l’objet x dans l’itinéraire de recherche; x peut être une liste, un tableau de données ou un objet créé à l’aide de la fonction savex. detach(x) ôte l’objet

Donner une formule qui utilise les variables P 1 et P 2 et qui repr´ esente le fait que le portrait est exactement dans un des coffres.. Le portrait est dans le

Par exemple, on suppose que les proies ne se reproduisent que dans un intervalle I ⊂

Statistique descriptive mono-vari´ e Bases de R Donn´ ees bi-vari´ ees Tests statistiques.. Objectifs

b - Le fichier ruban-3 initial final.csv contient la longueur de la trajectoire suivie par la pro- cession au d´ ebut (lorsque la tˆ ete atteint le point d’arriv´ e) et ` a la fin de

[r]

Pour chacune des valeurs propres, d´ eterminer un vecteur propre associ´ e.. b) D´ eterminer une matrice P et une matrice diagonale D telles que C = P

[r]