m2 cee pr. philippe polomé, université lumière lyon 2 2016...

37
Programmation dans R 2016-17 Programmation dans M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 – 2017

Upload: others

Post on 24-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Programmation dansM2 CEE

Pr. Philippe Polomé, Université Lumière Lyon 2

2016 – 2017

Page 2: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

SWIRL

Outline

Ch1. Bases de RSWIRLGestion de donnéesR graphiqueFonctionalités d’édition de document

Page 3: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

SWIRL

SWIRL

I Faites Course 1 : R programmingI Lessons 1-9 + 14I 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

I Suivre les commandes sur AE2016.RI Avec les diapos

Page 4: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

SWIRL

SWIRL R programming

I Passez maintenant à R-StudioI Swirl R programming 1-9 + 14

1 : Basic Building Blocks 2 : Workspace and Files3 : Sequences of Numbers 4 : Vectors5 : Missing Values 6 : Subsetting Vectors7 : Matrices and Data Frames 8 : Logic9 : Functions 10 : lapply and sapply11 : vapply and tapply 12 : Looking at Data13 : Simulation 14 : Dates and Times15 : Base Graphics

Page 5: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

SWIRL

Quelques commandes hors SWIRL

I On va voir quelques compléments de bases, hors SWIRLI Suivre les commandes sur AE2016.R

I 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

I diag(4) matrice identité de taille 4

Page 6: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. 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

I t(A) = transposée de A ( pas A’ )I dim(A) = dimensions de A (L puis C)I nrow(A) ; ncol(A) nbr L ; CI A[i,j] extrait l’élément (i,j)I A[,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 AI autre façon A[,-2]

I det(A1) déterminant

Page 7: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

SWIRL

Opérations sur matricesI eigen(A1) eigenvaluesI chol(A1) décomposition de CholeskyI solve(A1) inverseI A %*% B produit matriciel

I A*A produit élément-par-élémentI kronecker(A, B) produit de Kronecker ⌦

I crossprod(A, B) est un calcul efficient de A’BI diag(A1) extrait la diag

I cbind(1, A1) “combine” une C de 1 et A1 . . .. ! . .

I rbind(A1, diag(4, 2)) “empile” A1 et une matrice diag de taille

2 avec des 4 sur la diag

. .

. .". .. .

Page 8: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Gestion de données

Outline

Ch1. Bases de RSWIRLGestion de donnéesR graphiqueFonctionalités d’édition de document

Page 9: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Gestion de données

Dataframe

I “Frame” = cadreI Dans R, un “Dataframe” est une matrice de donnéesI qui contient de plus des méta-informations

I p.e. le type de variable ou le nom des catégoriesI et peut avoir des cols de natures différentes

I Un dataframe est un ensemble de vecteursI de même longueur, mais posisblement de nature 6=I mis l’un à côté de l’autre horizontalementI Donc un rectangle, dans lequel

I Les colonnes sont les variablesI Les lignes sont les observations

I Rem. Une “array” est, dans R, un objet plus général car ellepeut avoir + de 2 dimensions

Page 10: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Gestion de données

Création

I Un Dataframe peut être créé de pls façonsI clavier, lecture, importation

I Création clavier (cfr Swirl programming lesson 7)I mydata <- data.frame(one = 1 :10, two = 11 :20, three =

21 :30) alternative 1I mydata <- as.data.frame(matrix(1 :30, ncol=3)) and

names(mydata) <- c(“one”, “two”, “three”) alternative 2I Clairement, R n’est pas le meilleur logiciel pour entrer des

données

Page 11: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Gestion de données

attach

I Lorsqu’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))

Page 12: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Gestion de données

Sélection de sous-ensemble (subset)

I On accède à un sous-ensemble du Dataframe par [ ou $I $ extrait une seule varaible

I Pour travailler avec un sous-ensembleI on utilise [ or subset

I mydata.sub<-subset(mydata, two<=16, select = -two)I prend toutes les observations des variables one & three

I pour lesquelles les observations correspondantes de la two sont 16

Page 13: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Gestion de données

Exporter (write) un dataframe

I write.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

Page 14: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Gestion de données

Importer (read) un dataframe

I À 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 desvariables

I qui est placé dans un “data.frame” appelé newdataI Si les titres de col. ne sont pas décalées à G

I 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

Page 15: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Gestion de données

Importer un dataframe

I scan est utilisé pour des données qui ne sont pas en matriceI ?scan pour les détails

I Pour importer d’un autre systèmeI D’abord voir s’il est possible d’exporter de ce système en txt

ou csvI perte des méta-données

I GoogleI Voir www.statmethods.net/input/importingdata.html

I pour quelques formats

Page 16: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Gestion de données

Un peu de pratique : “Journals”

I Exemple, les données JOURNALS :I souscriptions à des journaux d’économie pour quelques

bibliothèques aux USA en 2000I 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)

I On étudie la relation entre le nbr de souscriptions et le prix parcitation

I La citation reflétant l’importance du journalI Donc l’intérêt pour une bibliothèque

Page 17: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. 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

I attach(Journals)I “attacher” pour utiliser dans les formules

I Calculez l’estimateur MCO de la régression de log(subs) surlog(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 ?

I detach(Journals)I “détacher” pour éviter des confusions de nom

Page 18: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

Outline

Ch1. Bases de RSWIRLGestion de donnéesR graphiqueFonctionalités d’édition de document

Page 19: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. 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’objet :

I dataframes, séries temp, modèles linéaires ajustésI C’est aussi une vielle commande, assez rustique

Page 20: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

“Scatterplots” - graphiques de dispersion ou XY

I Probablement les + communs en statI attach(Journals)

I plot(log(subs), log(citeprice))I rug(log(subs))

I rug(log(citeprice), side=2)

I detach(Journals)I plot(log(subs)~log(citeprice), data=Journals)

I alternative pour éviter d’avoir à attacher le dataframe

Page 21: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

R Paramètres Graphiques

I Les résultats d’un plot peuvent être modifiés de nombreusesfaç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

I Pls douzaines de paramètres modifiables sont disponiblesI 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")

I Prochaine diapo : liste de par

Page 22: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

R Paramètres GraphiquesArgument Description

axes should axes be drawn ?bg background colorcex size of a point or symbolcol colorlas orientation of axis label

lty, lwd line type and line widthmain, subs main title and subtitle

mar size of marginsmfcol, mfrow array defining layout for several graphs on one plot

pch plotting symboltype types

xlab, ylab axis labelsxlim, ylim axis ranges

xlog, ylog, log logarithmic scales

Page 23: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

R Paramètres Graphiques

I Ajouter des couches à un plot : lines( ), points( ), text( ),legend( )

I Ajouter 1 droite abline(a, b)I a est intercept, b pente

I 2 plots l’un sur l’autreI 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")

I Barplots, pie charts, boxplots, QQ plots & histogramsI barplot( ), pie( ), boxplot( ), qqplot( ), hist( )I On y reviendra

Page 24: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

Exporter des graphiquesI Pour utiliser les graphiques R dans d’autres logiciels

I il faut les exporterI “Export” envoie le graphe sur un “device”

I Au fond : une extension de fichier pdf ou jpgI Tous les devices fonctionnent pareil dans R

I 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 ExempleI 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

Page 25: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

Formules math dans un Plot

I R peut passer une formule dans un plot via LATEXI Voir ?plotmath

I ExempleI plot de la densité normal 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)

Page 26: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

Histogrammes & boxplots

I data("CPS1985") jeu de données sur le salaire & sesdéterminants

I summary(CPS1985) révèle que certaines variables sontcatégoriques

I Catégoriques : appelées factors par R, on y reviendraI levels(CPS1985$occupation)[c(2,6)] <- c("techn", "mgmt")

I abrège 2 noms d’occupationI attach(CPS1985) permet d’accéder aux variables de CPS1985

par leurs noms

Page 27: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

Une variable numérique : histogramme & densité

I hist(wage, freq=FALSE)I option freq=FALSE : fréquences relatives, sinon absolues

(comptage)I option binwidth=x permet de choisir la longueur des bases

I hist(log(wage), freq=FALSE)I lines(density(log(wage)), col=4)

I La function density calcule un histogramme lissé (voir coursnp)

I RemarqueI La distribution du log est moins asymétrique que celle des

données brutesI Les données en log sont svt + proches d’une normale

Page 28: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

Une catégorique

I La moyenne & la variance ne signifient rienI mais bien les fréquences

I summary(occupation) : fréquences absolues (comptes)I tab <- table(occupation) : stocke ces fréq. ds une tableI prop.table(tab) calcule les proportions (fréq. relatives)I Barplots & pie visualisent souvent bien les données cat.

I barplot(tab)I pie(tab)

Page 29: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

2 catégoriques

I Habituellement présentées ds un Table de ContingenceI xtabs( ) avec une interface formule :

I p.e. xtabs(~ gender + occupation, data = CPS1985) data=optionel

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

Page 30: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

2 numériques

I Coefficient de corrélation r est typiqueI 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

I cor(log(wage), education)I cor(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

Page 31: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

1 numérique & 1 catégorique

I Souvent, on calcule des moments conditionnelsI 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

I Les Box plots & QQ (quantile-quantile) plots sont souventutilisés

Page 32: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

1 numérique & 1 catégorique : Box plot

I Un box plot est une représentation grossière d’une distributionempirique

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)

Page 33: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

1 numérique & 1 catégorique : Box 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)

I detach(CPS1985) pour refermer CPS1985

Page 34: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

R graphique

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

Page 35: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Fonctionalités d’édition de document

Outline

Ch1. Bases de RSWIRLGestion de donnéesR graphiqueFonctionalités d’édition de document

Page 36: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Fonctionalités d’édition de document

SWeave – Knitr – Markdown

I Quelques packages servent à connecter R avec des éditeursI “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é automatiquement

3. LATEXpermet de choisir un format approprié : rapport, article,présentation & d’avoir des math bien écrites

ISWeave permet d’envoyer tout le script dans LATEX

Iknitr fait la même chose, mais combine d’autres packages etrésoud quelques problèmes de SWeave

IMarkdown convertit du texte simple en html (p.e. SPIP)

Page 37: M2 CEE Pr. Philippe Polomé, Université Lumière Lyon 2 2016 ...risques-environnement.universite-lyon.fr/IMG/pdf/r... · Programmation dans R 2016-17 Ch1. Bases de R Gestion de données

Programmation dans R 2016-17

Ch1. Bases de R

Fonctionalités d’édition de document

Markdown

I Markdown dans R-Studio pour convertir un document texteavec 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