Programmation dans Ch. 1. Bases de R - UDLrisques-environnement.universite-lyon.fr/IMG/pdf/r... ·...
Transcript of Programmation dans Ch. 1. Bases de R - UDLrisques-environnement.universite-lyon.fr/IMG/pdf/r... ·...
Programmation dans R 2017-18 – Ch. 1. Bases de R
Programmation dansCh. 1. Bases de R
M2 CEE
Pr. Philippe Polomé, Université Lumière Lyon 2
2017 – 2018
Programmation dans R 2017-18 – Ch. 1. Bases de R
SWIRL
Sommaire
SWIRL
Gestion de données
R graphique
Meilleurs graphiques : ggplot2
Fonctionalités d’édition de document
Programmation dans R 2017-18 – Ch. 1. Bases de R
SWIRL
SWIRL
IVous avez fait Course 1 : R programming Lessons 1-9 + 14
I On refait Lesson 1 pour voir si ça marche pour tout le mondeI pour sortir d’une lesson : escI répondez “no” aux propositions de “register”I À la suite de ...
I il faut presser -I Parfois, il s’ensuit pas mal de texte – lisez tout
ISuivre les commandes sur PR2017.R
I Avec les diapos
Programmation dans R 2017-18 – Ch. 1. Bases de R
SWIRL
SWIRL R programming
IPassez maintenant à R-Studio
I Swirl R programming 1-9 + 14
1 : Basic Building Blocks 2 : Workspace and Files
3 : Sequences of Numbers 4 : Vectors
5 : Missing Values 6 : Subsetting Vectors
7 : Matrices and Data Frames 8 : Logic
9 : Functions 10 : lapply and sapply
11 : vapply and tapply 12 : Looking at Data
13 : Simulation 14 : Dates and Times
15 : Base Graphics
Programmation dans R 2017-18 – Ch. 1. Bases de R
SWIRL
Quelques commandes hors SWIRL
IOn va voir quelques compléments de bases, hors SWIRL
I Suivre les commandes sur PR2017.RI
Fonctions math communes : log, exp, sign, sqrt, abs, min, max
I log(exp(sin(pi/4)^2)*exp(cos(pi/4)^2))I
Vecteurs spéciaux
I ones <- rep(1, 10)I even <- seq(from = 2, to = 20, by =2)I trend <- 1981 :2005
Idiag(4) matrice identité de taille 4
Programmation dans R 2017-18 – Ch. 1. Bases de R
SWIRL
Opérations sur matricesI
A<-matrix(1 :6, nrow = 2)
I A regardez à quoi ça ressemble et comment R donne laposition des éléments
It(A) = transposée de A ( pas A’ )
Idim(A) = dimensions de A (L puis C)
Inrow(A) ; ncol(A) nbr L ; C
IA[i,j] extrait l’élément (i,j)
IA[,j] extrait C j (toutes les L) en un vecteur
I A[i,] même chose pour L iI
A1<-A[1 :2, c(1, 3)] A1 a 2 L qui contiennent les 1er et 3eme
éléments de chaque L de A
I autre façon A[,-2]
Programmation dans R 2017-18 – Ch. 1. Bases de R
SWIRL
Opérations sur matrices
Idet(A1) déterminant
Ieigen(A1) eigenvalues
Ichol(A1) décomposition de Cholesky
Isolve(A1) inverse
IA %*% B produit matriciel
I A*A produit élément-par-élémentI kronecker(A, B) produit de Kronecker ⌦
Icrossprod(A, B) est un calcul efficient de A’B
Idiag(A1) extrait la diag
Programmation dans R 2017-18 – Ch. 1. Bases de R
SWIRL
Opérations sur matricesI
cbind(1, A1) “combine” une C de 1 et A1
. . .
. ! . .
Irbind(A1, diag(4, 2)) “empile” A1 et une matrice diag de taille
2 avec des 4 sur la diag
. .
. .". .. .
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
Sommaire
SWIRL
Gestion de données
R graphique
Meilleurs graphiques : ggplot2
Fonctionalités d’édition de document
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
Dataframe
I“Frame” = cadre “contexte”
I Dans R, un “Dataframe” est une matrice de donnéesI un ensemble de vecteurs de même longueurI mis l’un à côté de l’autre horizontalement
IChaque vecteur = 1 C = 1 variable
I possiblement de nature 6=I quantitative, numérique mais qualitative, caractères, dates...
I qui contient de plus des méta-informationsI p.e. le type de variable ou le nom des catégories
IChaque L = 1 observations
IRem. Une “array” est, dans R, un objet plus général car elle
peut avoir + de 2 dimensions
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
Création
IUn Dataframe peut être créé de pls façons
I clavier, lecture fichier R, importationI
Création clavier (cfr Swirl programming lesson 7)
I alternative 1I mydata <- data.frame(one = 1 :10, two = 11 :20, three =
21 :30)I alternative 2
I mydata <- as.data.frame(matrix(1 :30, ncol=3)) andnames(mydata) <- c(“one”, “two”, “three”)
I Clairement, R n’est pas le meilleur logiciel pour entrer desdonnées manuellement
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
attach
ILorsqu’un dataframe est “attached”
I en utilisant la commande attach,I alors les noms des variables dans le dataframe peuvent être
utilisés dans des commandesI
Par exemple
I mean(two) produit un message d’erreurI attach(mydata) et puis mean(two) produit la moyenne de la
variable “two”I
detach(mydata) permet de détacher le Dataframe
I p.e. pour éviter des confusions sur les noms de variablesI
Pour attacher pour une seule opération
I with(mydata, mean(two))
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
Sélection de sous-ensemble (subset)
IOn accède à un sous-ensemble du Dataframe par [ ou $
I $ extrait une seule varaibleI
Pour travailler avec un sous-ensemble
I on utilise [ or subsetI
mydata.sub<-subset(mydata, two<=16, select = -two)
I prend toutes les observations des variables one & threeI pour lesquelles les observations correspondantes de la two sont 16
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
Exporter (write) un dataframe
Iwrite.table(mydata, file=“mydata.txt”, col.names=TRUE)
I crée un fichier texte mydata.txt dans le répertoire de travailI Les méta-informations ne passent pas
I Le format du fichier texte est
“one” “two” “three”“1” 1 11 21“2” 2 12 22...
I Rem. on dirait que les intitulés de colonnes sont décalées à GI Selon le logiciel qui servira à ouvrir, il faut parfois insérer un
espace
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
Importer (read) un dataframeI
À parti d’un fichier texte (.txt ou .csv)
I newdata <- read.table(“mydata.txt”, header=TRUE)I lit un fichier texte dont la première ligne porte le nom des
variablesI qui est placé dans un “data.frame” appelé newdata
I Si les titres de col. ne sont pas décalées à GI comme si ça venait d’un tableurI R comprendra la col. avec les numéros de ligne comme une
autre variableI
read.table accepte des options
I sur le séparateur de col. (, ;)I sur le séparateur décimal (. ,)I peut lire du .csvI voir ?read.table
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
Importer un dataframe
Iscan est utilisé pour des données qui ne sont pas en matrice
I ?scan pour les détailsI
Pour importer d’un autre système
I Le + facile exporter de ce système en txt ou csvI perte des méta-donnéesI rarement possible (pas accès à l’autre système)
I R-Studio propose pls formatsI Ne marche pas svt car ces logiciels changent souvent de format
I Google p.e. “R import Stata 17 data”I Voir www.statmethods.net/input/importingdata.html
I pour quelques formats
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
Un peu de pratique : “Journals”
IExemple, les données JOURNALS :
Isouscriptions à des journaux d’économie pour quelques
bibliothèques aux USA en 2000
I 180 observations (les journals) sur 10 variables, entre autres :I subs (# of library subscriptions),I price (subscription price),I citations (total number of cites per journal)
IOn étudie la relation entre le nbr de souscriptions et le prix par
citation
I La citation reflétant l’importance du journalI Donc l’intérêt pour une bibliothèque
Programmation dans R 2017-18 – Ch. 1. Bases de R
Gestion de données
Un peu de pratique : “Journals”I
data("Journals", package = "AER")
I Journals$citeprice <- Journals$price/Journals$citationsI “ / “ est une division élément par élément pour des vecteurs
Iattach(Journals)
I “attacher” pour utiliser dans les formulesI
Calculez l’estimateur MCO de la régression de log(subs) sur
log(price/citations)
I et ses t-statsI au moyen des formules de mtx
I Difficulté car �̂2 est perçu comme une matrice 1⇥ 1 non
conformable avec⇣X
0X⌘�1
I Pls solutions p.e. ⌦ produit KroneckerI Résultats : 85 et -15 environ ?
Idetach(Journals)
I “détacher” pour éviter des confusions de nom
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Sommaire
SWIRL
Gestion de données
R graphique
Meilleurs graphiques : ggplot2
Fonctionalités d’édition de document
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
PlotI
D’abord SWIRL
I course R-programming, lesson 15 Base graphicsI
Quelques éléments graphiques supplémentaires
I Sur base du package plot
I Packages lattice ggplot2 plus sophistiquésI http ://varianceexplai-
ned.org/RData/code/code_lesson2/#segment1I R est considéré comme ayant de très bons graphiques
I Mais pas très aisésI
La commande plot ( )
I plot( ) est la commande par défaut pour représentergraphiquement beaucoup d’objets :
I dataframes, séries temp, modèles linéaires ajustésI C’est aussi une vielle commande, assez rustique
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
“Scatterplots” - graphiques de dispersion ou XY
IProbablement les + communs en économétrie
Iattach(Journals)
I plot(log(subs), log(citeprice))I rug(log(subs))
I rug(log(citeprice), side=2)I rug = “tapis” – sert à créer les graduations sur les axes
Idetach(Journals)
Iplot(log(subs)~log(citeprice), data=Journals)
I alternative pour éviter d’avoir à attacher le dataframe
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
R Paramètres Graphiques
ILes résultats d’un plot peuvent être modifiés de nombreuses
façons
I P.e. argument type contrôle si le plot génère des points (type= p), lignes (type = l), les 2 (type = b), des pas (type = s) oud’autres
IPls douzaines de paramètres modifiables sont disponibles
I Voir ?parI Soit en les fixant avec par( ) après une commande plotI Soit en les fournissant à dans la fonction plot( ) p.e.
plot(log(subs)~log(citeprice), data=Journals, pch=20,col="blue", ylim=c(0,8), xlim=c(-7,4), main="LibrarySubscriptions")
IProchaine diapo : liste de par
R Paramètres GraphiquesArgument Description
axes should axes be drawn ?
bg background color
cex size of a point or symbol
col color
las orientation of axis label
lty, lwd line type and line width
main, subs main title and subtitle
mar size of margins
mfcol, mfrow array defining layout for several graphs on one plot
pch plotting symbol
type types
xlab, ylab axis labels
xlim, ylim axis ranges
xlog, ylog, log logarithmic scales
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
R Paramètres Graphiques
IAjouter des couches à un plot : lines( ), points( ), text( ),
legend( )
I Ajouter 1 droite abline(a, b)I a est intercept, b pente
I2 plots l’un sur l’autre
I x <- rnorm(50)I x2 <- rnorm(50, -1)I plot(ecdf(x), xlim = range(c(x, x2)))
I ecdf empirical cumulative density functionI plot(ecdf(x2), add = TRUE, lty = "dashed")
IBarplots, pie charts, boxplots, QQ plots & histograms
I barplot( ), pie( ), boxplot( ), qqplot( ), hist( )I On y reviendra
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Exporter des graphiquesI
Pour utiliser les graphiques R dans d’autres logiciels
I il faut les exporterI
Le + simple : bouton “Export” Plots window
IR peut aussi envoyer le graphe sur un “device”
I Au fond : une extension de fichier pdf ou jpgI Tous les devices fonctionnent pareil dans RI Voir ?devices
1. le device est ouvert par une fonction qui porte son nom, p.e.pdf( )
2. Ensuite, le plot est exécuté3. Finalement, le device est fermé dev.off( )I Exemple
I pdf("myfile.pdf", height=5, width=6)I plot(1 :20, pch=1 :20, col=1 :20, cex=2)I dev.off()I Cherchez myfile.pdf sur votre machine
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Formules math dans un Plot
IR peut passer une formule dans un plot via L
AT
E
X
I Voir ?plotmathI
Exemple
I plot de la densité normale std avec sa définition mathI curve(dnorm, from=-5, to=5, col="slategray", lwd=3,
main="Density of the Standard Normal Distribution")I text(-5, 0.3, expression(f(x) == frac(1, sigma ~~ sqrt(2*pi))
~~ e^{-frac((x - mu)^2, 2*sigma^2)}), adj=0)I Malheureusement, il faut connaitre LATEXI & les paramètres ne sont pas faciles
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Histogrammes & boxplots
Idata("CPS1985")
I jeu de données sur le salaire & ses déterminantsI
summary(CPS1985)
I révèle que certaines variables sont catégoriquesI Catégoriques : appelées factors par R
IFactors = vecteurs de “noms” appelés catégorie
I parfois avec metadata p.e. noms des catégoriesI g <- rep(0 :1, c(2,4))I g <- factor(g, levels=0 :1, labels=c("male", "female"))
I Nomme cat. (0,1) de g en “Male”(=0) & “Female”I donc g est [1] male male female female female female
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
6 Factors dans CPS1985
IFactors sont comptés (fréquences)
I car la moyenne ne signifie rienI
levels(CPS1985$occupation)[c(2,6)] <- c("techn", "mgmt")
I abrège 2 noms d’occupationI
attach(CPS1985)
I permet d’accéder aux variables de CPS1985 par leurs nomsI
On va voir des graphes selon la nature des données
I Numérique ou cat.I 1 seule variable ou 2 en relation
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Une variable numérique : histogramme & densitéI
hist(wage, freq=FALSE)
I option freq=FALSEI fréquences relatives, sinon absolues (comptage)
I option binwidth=xI permet de choisir la longueur des bases
Ihist(log(wage), freq=FALSE)
Ilines(density(log(wage)), col=4)
I La fonction density calcule un histogramme lissé (voir coursnp)
IRemarque
I La distribution du log est moins asymétrique que celle desdonnées brutes
I Les données en log sont svt + proches d’une normale
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Une catégorique
ILa moyenne & la variance ne signifient rien
I mais bien les fréquencesI
summary(occupation) : fréquences absolues (comptes)
Itab <- table(occupation) : stocke ces fréq. ds une table
Iprop.table(tab) calcule les proportions (fréq. relatives)
IBarplots & pie visualisent souvent bien les données cat.
I barplot(tab)I pie(tab)
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
2 catégoriques
IHabituellement présentées ds une Table de Contingence
I xtabs( ) avec une interface formule :I p.e. xtabs(~ gender + occupation, data = CPS1985)I data= optionel car on a attaché
I table(gender, occupation) mêmes résultatsI
Plot de ça est un “spine plot”
I plot(gender ~ occupation)I plot(gender, occupation) regardez les différences
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
2 numériques
ICoefficient de corrélation r est typique
I Variables positives & asymétriques : Spearman’s ⇢I corrélation des ranks, au lieu des valeurs est souvent préféré
car r n’est pas robuste à l’asymétrie
Icor(log(wage), education)
Icor(log(wage), education, method="spearman")
I Résultats semblables pour ces donnéesI
plot(log(wage)~education)
I Le scatterplot montre peu de corrélation
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
1 numérique & 1 catégorique
ISouvent, on calcule des moments conditionnels
I p.e. salaire moyen selon le sexeI tapply(log(wage), gender, mean)
I “Appliquer” mean sur les 2 variables gender & log(wage)I Mean peut être remplacé par n’importe quelle fonction valide
ILes Box plots & QQ (quantile-quantile) plots sont souvent
utilisés
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
1 numérique & 1 catégorique : Box plot
IUn box plot est une représentation grossière d’une distribution
empirique
I Le box est limité par des “charnières” (1º & 3º quartiles) etmontre la médiane
I Hors du box, 2 lignes indiquent les obs. les + petites & +grandes
I à moins de 1.5 ⇥ taille du box à partir de la charnière la +proche
I Toute obs. au-delà est représentées séparément par un pointI
boxplot(log(wage)~gender)
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
1 numérique & 1 catégorique : QQ plotI
Un QQ plot apareille les quantiles de 2 distributions
I Se rappeler que les quantiles sont des quantitésI p.e. le 1º quartile du salaire féminin est le salaire t.q 25% des
femmes gagnent moins & 75% +I Si les 2 distributions sont identiques
I le QQ plot est la diagonaleI Sinon, si p.e. les hommes tendent à gagner + que les femmes,
alorsI avec les hommes sur l’axe des x, le QQ plot sera sous la diag.I Évoque le graphe du coefficient de Gini
I mwage <- subset(CPS1985, gender == "male")$wageI fwage <- subset(CPS1985, gender == "female")$wageI qqplot(mwage, fwage)I abline(0,1)
Idetach(CPS1985) pour refermer CPS1985
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Meilleurs graphiques : ggplot2
Sommaire
SWIRL
Gestion de données
R graphique
Meilleurs graphiques : ggplot2
Fonctionalités d’édition de document
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Meilleurs graphiques : ggplot2
Intro
Installez & chargez ggplot2
ggplot2 a des données intégrées
Idata("diamonds")
IView(diamonds)
I Carat = poids, cut, color, clarity, prixI Toutes des mesures du diamant
I Autres attributs : help(diamonds)I
Scatterplot : représenter les liens entre ces caractéristiques
I On peut choisir les axes, mais aussiI couleur, taille & forme des points
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Meilleurs graphiques : ggplot2
1º pas
Iggplot(diamonds, aes(x=carat, y=price)) + geom_point()
I Comment marche cette cmd ?I
3 parts ds 1 cmd ggplot
1. data, on écrit "diamonds"2. Organisation des attributs
I aes = “aesthetics”I aesthetics = toute dimension d’un graphe qu’on peut
percevoir visuellementI On utilise des parenthèses
3. On rajoute une “couche” (layer)I Ici, on indique qu’on veut un scatter plot avec “geom_point”I Bcp de couches ont un nom qui commence par "geom"
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Meilleurs graphiques : ggplot2
Ajouter la couleur
Iggplot(diamonds, aes(x=carat, y=price, color=clarity)) +
geom_point()
I On rajoute un “aesthetics”, ici la couleurI Qu’on associe au factor “clarity”
I Remarquez que ggplot a créé une légende en couleurI Essayer avec d’autres factors : regardez dans le fichier de
donnéesI
Pour représenter à la fois color & cut
I on rajoute simplement un aestheticI qui peut être la taille du point : size
I Faites-leI Au lieu de “size”, on peut aussi utiliser “shape”
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Meilleurs graphiques : ggplot2
Couche supplémentaireI
Le scatter plot est un "layer"
I On peut en rajouter avec le signe +I p.e. une courbe lissée pour la tendance générale :
geom_smoothI En repartant du 1º plot
I ggplot(diamonds, aes(x=carat, y=price)) + geom_point() +geom_smooth()
I La zone grise autour de la courbe est un intervalle de confiance
I On peut l’enlever avec l’option geom_smooth : "se=FALSE"I On peut aussi mettre une ligne de régression simple avec
l’option method="lm"I ln pour “linear model”I refaites la cmd avec les 2 options
ISi on utilise en plus l’aesthetic “color”
I ggplot va estimer une courbe lisse pour chaque couleurI Allez-yI Si vous enlevez geom_point, vous ne verrez que les courbes
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Meilleurs graphiques : ggplot2
Faceting : plot multipleI
Une autre façon de communiquer l’information sur un attribut
factor
I Diviser le plot en multiples plotsI un pour chaque niveau du factor (pas trop de niveaux)
I On appelle ça "faceting"I ggplot : couche "facet_wrap"
I P.e. faceting sur “clarity” sur des plots (carat, price, cut)I ggplot(diamonds, aes(x=carat, y=price, color=cut)) +
geom_point() + facet_wrap(~ clarity)I On peut rajouter une dimension de faceting avec p.e.
facet_wrap(cut~ clarity)I Mais ça n’est plus très clair
IOn peut rajouter un titre avec + ggtitle("My scatter plot")
I changer la légende de x + xlab("Weight (carats)")I Limiter la longueur des axes, mettre en log...
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Meilleurs graphiques : ggplot2
Histogrammes & Densités
IHistogramme : on ne regarde qu’un seul attribut
I ggplot(diamonds, aes(x=price)) + geom_histogram()I Il suffit de changer + geom_point() en + geom_histogram()I R renvoie un signal sur “binwidth” = taille de la base du
rectangleI Défaut = 30I On peut changer, p.e.
ggplot(diamonds, aes(x=price)) +geom_histogram(binwidth=2000)
IOn peut faire à peu près la même chose qu’avec un scatterplot
ISi on écrit geom_density au lieu de geom_histogram
I on a une densité lissée au lieu d’un histogrammeI Comment calculer cette densité n’est pas évident
Programmation dans R 2017-18 – Ch. 1. Bases de R
R graphique
Meilleurs graphiques : ggplot2
Boxplot & Violons
IBoxplot du prix selon les niveaux de couleur
I ggplot(diamonds, aes(x=color, y=price)) + geom_boxplot()I Il y a bcp d’outliers
I En rajoutant + scale_y_log10() on les voit moinsI
Si la distribution empirique ne suit pas ± une normale
I Le box plot est pas terribleI p.e. si on a 2 modes
IUne image possiblement + fidèles est le “violin”
I On remplace geom_boxplot() par geom_violin()I Pas super clair si on ne passe pas aux logI La largeur en chaque prix est la fréquence de ce prix
Devoir 1I
PARADE
I Supplément du dimanche de 500 quotidiens USI Tous les ans, un échantillon de 120-150 citoyens sélectionnés
“aléatoirement”I variables : profession, hometown, state & yearly earnings.
I dataframe PARADE2005 contient la version 2005 versionI avec une dichotomique “celebrity status” fortement
sur-échantillonnéI
Devoir 1
I Earning moyen en Californie, discuterI Nombre d’échantillonnés en Idaho
I Qu’en dire sur l’échantillon ?I Earning
I moyen & médian des célébrités, commenterI Fréquence & densitéI Boxplot selon statut célébritéI Répéter avec log
I Trouver un autre jeu de données sur lequel vous adapterezl’analyse exploratoire ci-dessus
Programmation dans R 2017-18 – Ch. 1. Bases de R
Fonctionalités d’édition de document
Sommaire
SWIRL
Gestion de données
R graphique
Meilleurs graphiques : ggplot2
Fonctionalités d’édition de document
Programmation dans R 2017-18 – Ch. 1. Bases de R
Fonctionalités d’édition de document
SWeave – Knitr – Markdown
IQuelques packages servent à connecter R avec des éditeurs
I “literate programming”1. On écrit le texte y compris formules en latex & commandes R
(graphiques, régressions...)2. Si les données changent, ou bien le modèle économétrique,
tout est ajusté automatiquement3. LATEXpermet de choisir un format approprié : rapport, article,
présentation & d’avoir des math bien écrites
ISWeave permet d’envoyer tout le script dans L
AT
E
X
Iknitr fait la même chose, mais combine d’autres packages et
résoud quelques problèmes de SWeave
IMarkdown convertit du texte simple en html (p.e. SPIP)
Programmation dans R 2017-18 – Ch. 1. Bases de R
Fonctionalités d’édition de document
Markdown
IMarkdown dans R-Studio pour convertir un document texte
avec des instructions R-Studio en divers formats
I HTML, PDF, MS Word, LATEX, diapo...I
Auto-apprentissage
I http ://rmarkdown.rstudio.com/lesson-1.htmlI selon votre processeur
I Je ne poursuis pasI
“Compile notebook” (bouton ds éditeur)
I permet de tester en html, pdf & wordI http ://rmarkdown.rstudio.com/r_notebook_format.html