Example: bankruptcy

TP01 : Découverte de R - Exercices

TP01 : D couverte de R - ExercicesJustine Gu gan - mars 2017Ce polycopi rassemble diff rents Exercices vous permettant d apprendre utiliser le langage de programmationR. Ces Exercices sont de difficult s variables. Il est important de r aliser les Exercices les plus simples avantde d buter les plus des objets R (vecteurs, facteurs, listes, tableaux, etmatrices)Exercice 1 Soita=c("lannister", "targaryen", "baratheon", "starck", "greyjoy")1. Quelle est la longueur du vecteur ?indice :length2. Essayez de fairea[1:3]. Qu obtenez-vous ?3. Cr ez un nouveau vecteurbne contenant que lannister et Essayez de faire a[-1]. Qu obtenez-vous ?5. Triez par ordre :sort?a=c("lannister", "targaryen", "baratheon", "starck", "greyjoy")length(a)a[1:3]b = a[c(1,4)]a[-1]sort(a)Exercice 21.

TP01 : Découverte de R - Exercices Justine Guégan - j.guegan-ihu@icm-institute.org 6 mars 2017 Cepolycopiérassembledifférentsexercicesvouspermettantd ...

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Advertisement

Transcription of TP01 : Découverte de R - Exercices

1 TP01 : D couverte de R - ExercicesJustine Gu gan - mars 2017Ce polycopi rassemble diff rents Exercices vous permettant d apprendre utiliser le langage de programmationR. Ces Exercices sont de difficult s variables. Il est important de r aliser les Exercices les plus simples avantde d buter les plus des objets R (vecteurs, facteurs, listes, tableaux, etmatrices)Exercice 1 Soita=c("lannister", "targaryen", "baratheon", "starck", "greyjoy")1. Quelle est la longueur du vecteur ?indice :length2. Essayez de fairea[1:3]. Qu obtenez-vous ?3. Cr ez un nouveau vecteurbne contenant que lannister et Essayez de faire a[-1]. Qu obtenez-vous ?5. Triez par ordre :sort?a=c("lannister", "targaryen", "baratheon", "starck", "greyjoy")length(a)a[1:3]b = a[c(1,4)]a[-1]sort(a)Exercice 21.

2 Cr ez un vecteuracontenant tous les entiers de 1 ::.2. Ajoutez les valeurs 200, 201, 202 au Cr ez un vecteurbcontenant tous les entiers pairs de 2 =c(1:100)c(a, 200, 201, 202)b =seq(from = 2, to = 100, by = 2)Exercice 31. Cr er le vecteurvec1contenant tous les multiples de 2 compris entre 1 et er le vecteurvec2contenant 3 fois chacun des 10 chiffres (soit 0, 0, 0 ; 1, 1, 1 ; 2, 2, 2 ; 3, 3, 3 ;etc.).Indice:rep() er le vecteurvec3contenant une fois la lettre A, deux fois la lettre B, trois fois la lettre C .. et 26fois la lettre Z. Quelle est la longueur de cette suite ?Indice:LETTERS;length()1 Pensez bien regarder l aide des fonctions. Par exemple, pour la fonctionrepregardez bien la diff renceentre les param treseachettimes; vous pouvez copier-coller les lignes d exemple pour bien comprendrechaque param tre.

3 #1vec1 =seq(from=2, to=50, by=2 )#2vec2 =rep(c(0:9), each=3)#3vec3 =rep(LETTERS, times =c(1:26))length(vec3)Exercice 4La commandepastepermet de concataner du ("chr", 1, sep="").Cr ez, en une seule ligne de commande, le vecteurvec4contenant les noms suivants :chr1,chr2, .. ,chr22,chrX, :paste()paste("chr", 1, sep="")vec4 =paste("chr",c(1:22,"X","Y"), sep="")Exercice 5 : Facteurs1. D finissez un facteurfac = factor(c("a","b","b","b","a","b","a","a" )). le nombre de"a"et de"b"dansfacen utilisant les fonctionswhichetlengthet des op rateursbinaires (==). permet de faire la fonctiontable? Appliquez la bien la fonctiontabletr str s utile !fac =factor(c("a","b","b","b","a","b","a","a "))length(which(fac == "a"))length(which(fac == "b"))table(fac)Exercice 6 : Matrices1.

4 Ex cutez la commandea = rep(c(0,1), 50). Qu a-t-on fait ?2. Utilisezapour construire une matriceA 10 lignes et 10 : matrix3. Affichez les dimensions de cette :dim,ncol,nrow4. Utilisez la fonctiontsur cette matrice pour cr er une matriceB. Que s est-il pass ? commandesA[1:5, ]etB[, 1:5]permettent de r cuperer respectivement les 5 premi res lignesdeAet les 5 premi res colonnes deB. Inspirez-vous de ces commandes pour r cup rez dansAles lignesne contenant que des 1 et dansBles colonnes ne contenant que des 0.#1a =rep(c(0,1), 50)#2A =matrix(a, ncol = 10, nrow = 10)2#3dim(A)ncol(A)nrow(A)#4B =t(A)#5line1 = A[seq(2,10,2),]col0 = B[,seq(1,10,2)]Exercice 7 :listeet tableaux de donn es ( )1. Cr ez une listexcontenant : une variable al atoire gaussienne de taille 10 appel ea un vecteur contenant uniquement des 1 de taille 10 galement, appel b.

5 On peut acc der aux deux l ments de cette liste avec les commandesx[[i]]oux$ :list, ez un objetyqui est la transformation de cette liste On peut maintenant parcourir les l ments de chaque objet comme pour une matrice avec la commandey[i,j]!indice = ez deux objetsz1etz2contenant respectivement les 3 premi res et les 3 derni res lignes est la classe de ces deux objets ?4. Rajoutez la listexun vecteurchiffrecontenant les entiers de 1 Essayez de transformer de Que se passe-t-il ?#1x =list(a =rnorm(10),b =rep(1, 10))x[["a"]]x$a#2y = (x)#3z1 = y[c(1:3) ,]z2 = y[c(8:10),]class(z1)class(z2)#4x$chiffre = 1:26# (x)3 Exercice final classe objet : Student s Sleep la commandedata(sleep). Nous venons de charger en m moire l un des nombreux jeux dedonn es distribu s avec R !

6 Profitez de l aide sur ce jeu de donn es pour en apprendre un peu plus(?sleep) ! Tous les jeux de donn es disponibles avec l installation de base de R sont accessibles entapantdata().2. Quel est le type de l objetsleep?3. Quelle fonction vous permet d obtenir rapidement le nombre d individus par groupe ? Executez Combien y-a-t-il de valeurs n gatives dans le groupe 1 ?Indice :which() s un vecteur repr sentant le sexe des individus :s = rep(c("f","m","m","f","m","f","m","m","f ","m"),2).Combinez l objetsleepet le vecteursdans une nouvelle :cbind() sont les noms des colonnes de la matricesleep2? Renommez la derni re colonne en sex .Indice :colnames()7. Combien y-a-t-il de femmes et d hommes dans chacun des groupes ?#1data(sleep)#2typeof(sleep);class(slee p)#3table(sleep$group)#4length(which(sle ep$extra < 0))#5s =rep(c("f","m","m","f","m","f","m","m"," f","m"),2)sleep2 =cbind(sleep, s)#6colnames(sleep2)colnames(sleep2)[4] = "sex"#7table(sleep2$s, sleep2$group)Lire et sauvegarder des donn esExercice 8 : Lire les donn es d un fichier : est possible de lire les donn es stock es dans des fichiers sous formattxtgr ce, entre autres, aux (), (), ()etscan().

7 Par ailleurs, la ()( ()) du packagegdatafournit les outils pour lire (resp. crire) des fichiers au format Excel. Ilexiste aussi la ( ) du packagexlsx.(R cup rez les fichiers demand s sur le site xxxxxxx). Vous pouvez ouvrir au pr alable ces diff rents fichiersdans un diteur de texte afin d identifier le s parateur de colonnes, le symbole de d cimale, comment sontd finies les valeurs manquantes etc .. dans une variable nomm eAle jeu de donn es nomm **Indice :le s parateur de colonne tabulation correspond en informatique*2. Importez dans une variable nomm eBle jeu de donn Importez dans une variable nomm eCle jeu de donn dans une variable nomm eDle jeu de donn Combien devaleurs manquantes sont contenues dans le fichier ?5. Importez dans une variable nomm eEle jeu de donn esauto2004_don_manquante(99999).

8 Quel est le mode des objets cr s par la ()?4 Indice :help(" "),help(" ")#1A = (file=" ", sep="\t", header = TRUE)#2B = (file=" ", sep="\t", header = FALSE)#3C = (file=" ", sep="\t", header = TRUE, dec = ",")#4D = (file=" ", header = TRUE, sep="\t", = "")nb =length(which( (D) == TRUE))#5E = (file="auto2004_don_manquante(99999).txt ", header = TRUE, sep="\t", = "99999")#6class(E)Exercice 9 : Enregistrer des donn esCr er la matrice suivante :A= 1 2 3 45 6 7 89 10 11 12 1. Ecrire la matriceAdans un fichier nomm Que remarquez-vous? des arguments la commande pr c dente pour retirer des noms aux lignes et aux colonnes dufichier cr .3. Sauver la matriceAau le ce la Que donne la commandeC = load(" ")?5. Sauver toutes les variables dans un fichier nomm donn A =matrix(seq(12), ncol = 4, byrow = TRUE)# (A, file = " ")# (A, file = " ", = FALSE, = FALSE)#3save(A, file=" ")#4C =load(" ")### la matrice A est recharg e.

9 ### la variable C vaut "A"#5save(list =ls(), "donn ")5 Fonctions graphiquesExercice 10 : quelques graphiques des base en R1. Chargez le jeu de donn esirisd j pr sent dans Pour chaque esp ce de fleurs, indiquez le nombre de partir du r sultat pr c dent, r alisez une repr sentation en camembert (pie chart), puis en b tons(barplot).Indicepie()4. Tapez la ligne de commande suivante :summary(iris).Quel r sultat obtenez-vous ? repr sentation ad quate est la bo te moustache (boxplot). Cr ez un boxplot pour les 4 variablesnum riques du jeu de donn ()6. R alisez le m me graphique en ajoutant un titre et en supprimant les valeurs extr Repr sentez le pie chart et le boxplot sur la m me fen tre (), option Exportez le graphique pr c dent en pdf sur votre (); () senter un scatter plot simple avec en abscisse la longueur des p tales et en ordonn es leur de d couvrir les diff rents param tres de la fonctionplot, refaite le m me graphique qu lafonction pr c dente en : augmentant la taille des pointsIndice :cex rempla ant les points par des triangles de couleur rougeIndicepchoption ajoutant une ligne horizontale en pointill y=1 Indice :abline#1data(iris)#2p =table(iris$Species)#3pie(p)barplot(p)#4 summary(iris)#5boxplot(iris[,1:4])#6boxp lot(iris[,1:4], title="Iris Boxplot", outline=FALSE)#7par(mfrow=c(1,2))boxplot (iris[,1:4], title="Iris Boxplot", outline=FALSE)pie(p)#8pdf(" ")par(mfrow=c(1,2))6boxplot(iris[,1.)]

10 4], title="Iris Boxplot", outline=FALSE)pie(p) ()#9plot(iris$ , iris$ )#10plot(iris$ , iris$ , cex=5)plot(iris$ , iris$ , pch=17, col="red")abline(h=1, lty=2)#9pairs(iris[,1:4], col= (iris$Species), pch=16)#10pdf(" ")pairs(iris[,1:4], col= (iris$Species), pch=16) ()Exercice 11 : distribution et density plot1. Charger le jeu de donn Prendre connaissance des donn es (dimension, type). un histogramme de la variableOzone. Repr senter l histogramme en terme de probabilit dedensit plut t qu en terme de fr quence (axe Y). Ajouter un titre, modifier le noms des axes, et colorerles barres de l histogramme en gris et les traits de l histogramme en bleu. Augmenter la taille du pas del histogramme l aide de la fonctiondensity(). Appliquer cette fonction la variableOzone.


Related search queries