21 oct 2015 · Pour conclure cette introduction, il semble important de mentionner la le package est très bien faite : http://cran r-project org/web/packages/
Previous PDF | Next PDF |
[PDF] Introduction à la programmation en R - The Comprehensive R
concentrent sur l'apprentissage de R en tant que langage de programmation sous-jacent aux nouveau langage au projet GNU1, faisant de R un logiciel libre http://cran r-project org/web/views/Optimization html 7 4 Exemples ###
[PDF] R pour les débutants - The Comprehensive R Archive Network
3http://cran r-project org/doc/FAQ/R-FAQ html biner dans le même programme différentes fonctions statistiques pour réaliser présentation du graphique
[PDF] Introduction au logiciel R - Institut de Mathématiques de Toulouse
Programmation Généralités Ressources Fichiers d'installation, mises à jour, packages, FAQ, newsletter, documentation www r-project · cran r-project
[PDF] Introduction à R
22 oct 2018 · Le logiciel R (disponible sur http://www r-project org/) est un logiciel de programmation assez simple d'utilisation, (http://cran r-project org/)
[PDF] 1 Introduction - Quest-ce que le logiciel R? 2 - LMPA - ULCO
lement un langage de programmation complet, c'est cet aspect qui fait que R est différent des autres logiciels statistiques http ://cran r-project org/ ou de toute
[PDF] Introduction au logiciel R - Jonathan Lenoir
Chapitre 1 : Introduction au logiciel R 1 1 Présentation et et installer R http:// cran r-project org/ R est un projet collaboratif avec de nombreux contributeurs
[PDF] Initiation au logiciel R 1 Introduction 2 RStudio
12 oct 2020 · logiciel R constitue aujourd'hui un langage de programmation CRAN ( Comprehensive R Archive Network, http ://cran r-project org/) ou de
[PDF] Logiciel R et programmation - Ewen Gallic
21 oct 2015 · Pour conclure cette introduction, il semble important de mentionner la le package est très bien faite : http://cran r-project org/web/packages/
[PDF] analyse-R - GitHub Pages
9 fév 2021 · comme R s'apparente davantage à un langage de programmation qu'à un logiciel http://cran r-project org/doc/manuals/R-intro html R Data
[PDF] Logique, raisonnements mathématiques et Situations de Recherche
[PDF] cours d 'initiation a la logistique - cloudfrontnet
[PDF] LE LOGOTYPE
[PDF] FIABILITE MAINTENABILITE DISPONIBILITE
[PDF] La loi normale
[PDF] Le lotissement Réglementation - Cours de Génie Civil
[PDF] Mécanismes et macro- économie monétaires
[PDF] Bien demarrer avec Flash - Site Web ? vocation éducationnel de l
[PDF] COURS DE MAINTENANCE
[PDF] support de cours - Faculté des Sciences Juridiques, Economiques et
[PDF] Sommaire cours 1re année BTS assistant de manager - Cned
[PDF] Sommaire des cours 1e année BTS NRC - Cned
[PDF] Management de l 'innovation
[PDF] Les sept principes du management de la chaîne logistique
Ewen Gallic
1 http://egallic.fr2015LogicielRet programmation1. ewen.gallic[at]gmail.comAvant-propos
Ces notes de cours ont été réalisées dans le cadre d"un enseignement d"introduction àRadressé à
des étudiants du Master de Statistique et Économétrie de la Faculté des Sciences Économiques
de l"Université de Rennes 1.Objectifs
Cet ouvrage a pour but l"initiation au logiciel statistique et au langage informatique portant le même nom,R, afin d"être capable de s"en servir de manière efficace et autonome. Le lecteur peut exécuter tous les exemples fournis (et est vivement encouragé à le faire). Des exercices viennent clore certains chapitres. Les corrections sont disponibles en ligne à l"adresse suivante :http://egallic.fr/enseignement/.À qui s"adressent ces notes?
Dans un premier temps, cet ouvrage s"adresse aux débutants qui souhaientent apprendre lesbases du langage et du logicielR. Le lecteur initié peut également s"appuyer sur ces notes afin
d"y retrouver des rappels sur les notions basiques.Remerciements
Ce manuel est le produit de plusieurs années de pratique, qui ont débutées en 2011 grâce à
Christophe Cariou, que je tiens à remercier pour m"avoir soufflé l"idée d"utiliserRpour réaliser
des projets amusants sur lesquels nous avons travaillés. Un énorme merci à Arthur Charpentier
pour la quantité de savoir et d"astuces fournis sur l"utilisation deR, et qui est à l"origine de
nombreux exemples présents dans ces notes de cours. Merci aussi à François Briatte de m"avoir
introduit à de nouveaux horizons dans le langage, et aussi à Gauthier Vermandel pour ses nombreux conseils. Merci également à Julien-Yacine Chaqra pour ses suggestions et relectures. Enfin, merci à toute la communautéRd"exister et de proposer ce partage de savoir librement et gratuitement. iiTable des matières
1 Introduction1
1.1 Historique
11.2 Présentation de l"espace de travail
11.2.1 La console et les fenêtres de script
11.2.2 Les variables
21.2.2.1 Assignation
21.2.2.2 Conventions de nommage
31.2.2.3 Les objets en mémoire
31.2.2.4 Modification, suppression
41.2.3 Lespackages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
1.2.4 L"aide
51.3 Un environnement de développement : RStudio
62 Données7
2.1 Types de données
72.1.1 Mode
72.1.2 Longueur
92.1.3 Données manquantes
92.1.4 L"objet vide
92.2 Structure des données
102.2.1 Structures de base
102.2.1.1 Vecteurs
102.2.1.2 Facteurs
112.2.1.3 Dates
122.2.1.4 Matrices
152.2.1.5 Listes
172.2.2 Bases de données
182.2.2.1 Data frames
182.2.2.2 Data table
192.3 Importation, exportation et création de données
202.3.1 Importation
202.3.1.1 La fonctionread.table. . . . . . . . . . . . . . . . . . . . . . .20
2.3.1.2 La fonctionscan. . . . . . . . . . . . . . . . . . . . . . . . . . .22
2.3.1.3 La fonctionread.fwf. . . . . . . . . . . . . . . . . . . . . . . .23
iiiTABLE DES MATIÈRES
2.3.1.4 Importation depuis Excel©. . . . . . . . . . . . . . . . . . . . .24
2.3.1.5 Importation depuis d"autres formats
252.3.2 Exportation
252.3.3 Génération
262.3.3.1 Séquences régulières
262.3.3.2 Séquences pseudo-aléatoires
282.4 Manipulation des données
292.4.1 Opérateurs
292.4.1.1 Opérateurs arithmétiques
302.4.1.2 Opérateurs de comparaison
302.4.1.3 Opérateurs logiques
312.4.1.4 Attention au recyclage
322.4.2 Accès aux valeurs, modifications
332.4.2.1 Accès par indices
332.4.2.2 Accès par noms
382.4.3 Chaînes de caractères
412.4.3.1 Concaténation
412.4.3.2 Conversion en majuscules ou minuscules
432.4.3.3 Compter le nombre de caractères d"une chaîne
432.4.3.4 Extraction de sous-chaînes
442.4.3.5 Recherche de chaînes de caractères
462.4.3.6 Nettoyage, complétion
482.4.4 Dates
492.4.4.1 Extraction
492.4.4.2 Opérations
502.4.4.3 Intervalles de dates
532.4.4.4 Séquence de dates
562.4.4.5 Fuseaux horaires
572.4.4.6 Paramètres locaux
572.4.5 Calculs matriciels
592.4.5.1 Addition, soustraction
592.4.5.2 Multiplication, division
602.4.5.3 Déterminant, trace
622.4.6 Data frames
622.4.6.1 Sélection
622.4.6.2 Filtrage
642.4.6.3 Retirer les valeurs dupliquées
652.4.6.4 Modification des colonnes
652.4.6.5 Tri
702.4.6.6 Jointures
722.4.6.7 Agrégation
762.4.6.8 Stacking et unstacking
792.4.7 Data tables
832.4.7.1 Création, conversion
832.4.7.2 Sélection
842.4.7.3 Filtrage
852.4.7.4 Retirer les valeurs dupliquées
852.4.7.5 Clés
852.4.7.6 Modification des colonnes
882.4.7.7 Tri
882.4.7.8 Copie dedata.table. . . . . . . . . . . . . . . . . . . . . . . .89
ivTABLE DES MATIÈRES
2.4.7.9 Jointures
902.4.7.10 Agrégation
912.4.8 Quelques fonctions utiles
932.5 Exercices
963 Fonctions102
3.1 Définition
1023.2 La structure d"une fonction
1033.2.1 Le corps d"une fonction
1033.2.2 Les paramètres d"une fonction
1053.2.2.1 Appel sans noms
1053.2.2.2 Paramètres effectifs
1053.2.2.3 Appel avec des noms partiels
1063.2.2.4 Fonctions sans paramètres
1063.2.2.5 La paramètre spécial.... . . . . . . . . . . . . . . . . . . . . .107
3.2.3 Portée des fonctions
1073.3 Exercices
1094 Boucles et calculs vectoriels
1124.1 Les boucles
1124.1.1 Les boucles avecwhile(). . . . . . . . . . . . . . . . . . . . . . . . . . .112
4.1.2 Les boucles avecfor(). . . . . . . . . . . . . . . . . . . . . . . . . . . .113
4.1.3 Les conditions
1134.1.3.1 Les instructionsif...else. . . . . . . . . . . . . . . . . . . . .113
4.1.3.2 La fonctionswitch. . . . . . . . . . . . . . . . . . . . . . . . .114
4.1.4 L"instructionrepeat...,break. . . . . . . . . . . . . . . . . . . . . . .115
4.1.5 L"instructionnext...,break. . . . . . . . . . . . . . . . . . . . . . . . .115
4.1.6 Barre de progression
1164.2 La vectorisation
1164.2.1 Les fonctions du packageplyr. . . . . . . . . . . . . . . . . . . . . . . .117
4.2.1.1Arrayeninput:a*ply(). . . . . . . . . . . . . . . . . . . . . .118
4.2.1.2Data frameeninput:d*ply(). . . . . . . . . . . . . . . . . . .120
4.2.1.3Listeninput:l*ply(). . . . . . . . . . . . . . . . . . . . . . .122
4.2.1.4 Calcul parallèle
1234.2.2 Les fonctions de la familleapplydu packagebase. . . . . . . . . . . . .124
4.2.2.1 La fonctionlapply. . . . . . . . . . . . . . . . . . . . . . . . .124
4.2.2.2 La fonctionsapply. . . . . . . . . . . . . . . . . . . . . . . . .126
4.2.2.3 La fonctionvapply. . . . . . . . . . . . . . . . . . . . . . . . .128
4.2.2.4 La fonctionapply. . . . . . . . . . . . . . . . . . . . . . . . . .128
4.2.2.5 La fonctiontapply. . . . . . . . . . . . . . . . . . . . . . . . .129
4.2.2.6 La fonctionmapply. . . . . . . . . . . . . . . . . . . . . . . . .130
4.2.3 La fonctionVectorize. . . . . . . . . . . . . . . . . . . . . . . . . . . . .131
4.3 Exercices
1315 Graphiques
1345.1 Structure
1345.2 Des graphiques élaborés avecggplot(). . . . . . . . . . . . . . . . . . . . . . .135
5.2.1 Paramètres esthétiques
1365.2.2 Paramètres géométriques (fonctionsgeom_*()). . . . . . . . . . . . . . . 139
5.2.2.1 Points
1405.2.2.2 Lignes
1415.2.2.3 Polygones
142v
TABLE DES MATIÈRES
5.2.2.4 Boxplot
1425.2.2.5 Gigue
1435.2.2.6 Courbe de tendance
1445.2.2.7 Histogramme
1455.2.2.8 Densité
1465.2.3 Paramètres statistiques (fonctionsstat_*()). . . . . . . . . . . . . . . . 147
5.2.4 Échelles (fonctionsscale_*()). . . . . . . . . . . . . . . . . . . . . . . . 150
5.2.5 Groupes
1565.2.6 Annotations
1575.2.6.1 Texte
1585.2.6.2 Lignes
1595.2.6.3 Rectangles
1615.2.7 Positions
1615.2.8 Facettes
1625.2.8.1 La fonctionfacet_grid(). . . . . . . . . . . . . . . . . . . . .163
5.2.8.2 La fonctionfacet_wrap(). . . . . . . . . . . . . . . . . . . . .165
5.2.8.3 Échelles et facettes
1665.2.9 Coordonnées
1675.2.10 Titres, axes, légendes
1695.3 Enregistrement des graphiques
1725.4 Cartes
1735.4.1 Récupérer des cartes toutes faites
1735.4.1.1Packagerworldmap. . . . . . . . . . . . . . . . . . . . . . . . .173
5.4.1.2Packagemaps. . . . . . . . . . . . . . . . . . . . . . . . . . . . .174
5.4.1.3 Fichiershapefile. . . . . . . . . . . . . . . . . . . . . . . . . .177
5.4.2 Carte choroplèthe
1785.5 Graphiques en 3D
1795.6 Exercices
1816 Régressions linéaires avecR186
6.1 Rappels
1866.2 Données de l"exemple
1876.3 Estimation des paramètres
1906.4 Lecture des sorties
1916.5 Extractions
1926.6 Variables catégorielles
1946.7 Tests de nullité des coefficients et intervalles de confiance
1956.8 Prévisions
1976.9 Exportation des résultats
1996.10 Exercices
2007 Expressions régulières
2027.1 Les recherches basiques
2027.2 Les classes de caractères
2057.3 Les quantificateurs
2097.4 Les métacaractères
2107.5 Fonctions d"extraction
2107.6 Quelques fonctions dupackagestringr. . . . . . . . . . . . . . . . . . . . . . .210
7.6.1 La fonctionstr_detect(). . . . . . . . . . . . . . . . . . . . . . . . . . .211
7.6.2 La fonctionstr_extract(). . . . . . . . . . . . . . . . . . . . . . . . . .211
7.6.3 La fonctionstr_extract_all(). . . . . . . . . . . . . . . . . . . . . . .211
7.6.4 La fonctionstr_match(). . . . . . . . . . . . . . . . . . . . . . . . . . .212
viTABLE DES MATIÈRES
7.6.5 La fonctionstr_match_all(). . . . . . . . . . . . . . . . . . . . . . . . .212
7.6.6 La fonctionstr_locate(). . . . . . . . . . . . . . . . . . . . . . . . . . .213
7.6.7 La fonctionstr_locate_all(). . . . . . . . . . . . . . . . . . . . . . . .214
7.6.8 La fonctionstr_replace(). . . . . . . . . . . . . . . . . . . . . . . . . .215
7.6.9 La fonctionstr_replace_all(). . . . . . . . . . . . . . . . . . . . . . .215
7.6.10 La fonctionstr_split(). . . . . . . . . . . . . . . . . . . . . . . . . . .215
7.6.11 La fonctionstr_string_fixed(). . . . . . . . . . . . . . . . . . . . . . .216
Références217
Index des expressionsR219
viiTABLE DES MATIÈRES
viii 1Introduction
Ce document est construit principalement à l"aide des références suivantes :Lafa yede Mic heaux
et al. 2011F arnsworth
2008Charp entier
2014Zuur et al.
2009P aradis
2002) et
Goulet
20141.1 Historique
Dans le milieu des années 1970, une équipe de chercheurs de AT&T Bell Laboratories, composée
de John Chambers, Douglas Bates, Rick Becker, Bill Cleveland, Trevor Hastie, Daryl Pregibonet Allan Wilks, développe un langage de programmation appeléS(la lettreSfaisant référence à
statistics). Il s"agit d"un langage permettant de manipuler les données et d"effectuer des analyses
statistiques et graphiques. Dans le milieu des années 1990, Ross Ihaka et Robert Gentlemancréént leRau département de Statistiques de l"Université d"Auckland. Ce langage et logiciel,
inspiré duSet deSchemeest distribué sous les termes de la GNUGeneral Public Licence. La RDevelopment Core Teamse charge de distribuer et de développer le logicielR. De nombreux contributeurs à travers le monde participent au développement deR.1.2 Présentation de l"espace de travail
1.2.1 La console et les fenêtres de script
Rest un langage interprété, c"est-à-dire qu"il nécessite un interprète pour exécuter les com-
mandes, et n"a pas de phase de compilation. Il existe plusieurs façons de travailler avecR: soit directement dans la console (qui est un interprète), soit dans une fenêtre de script (Fig 1.1 La seconde méthode est fortement conseillée, puisqu"elle permet de sauvegarder le code et d"yaccéder facilement pour une utilisation utlérieure. De plus, il existe souvent des raccourcis cla-
viers, en fonction de l"éditeur utilisé, qui permettent de soumettre le code de la fenêtre de script
à l"interprète. Les fichiers de code que l"on sauvegardent possèdent l"extension ".R".Dans la console, à la fin de l"affichage d"ouverture de sessionR, se trouve le caractère>(prompt),
invitant l"utilisateur à inscrire une commande. Les expressions sont évaluées une fois qu"elle sont
soumises (à l"aide de la toucheENTREE) et le résultat est donné, lorsqu"il n"y a pas d"erreur dans
le code, juste en dessous : 11. INTRODUCTION
2 1 ## [1] 3Figure1.1 - Console et fenêtre de script sous Mac OS X Par la suite, le symbole d"invite de commande ne sera plus affichée dans les cadres de code, afin de permettre au lecteur de reproduire facilement les résultats obtenus en copiant et collant les instructions. Par ailleurs, dans ce document, contrairement à ce que l"on peut observer dans laconsoleR, le résultat de l"évalutation de l"expression "2+1" est précédé de deux symboles dièses.
Le symbole#indique àRde ne pas evaluer le code qui suit, jusqu"à la fin de la ligne. Il permet donc de placer des lignes en commentaires.# Des commentaires 2 1# +1 ## [1] 3 Lorsque l"on travaille dans une fenêtre de script, la combinaison de touches pour soumettre lecode dépend du système d"exploitation et de l"éditeur de texte utilisé (CTRL+Rsous Windows,
CMD+ENTERsous Mac OS).
1.2.2 Les variables
1.2.2.1 Assignation
De base, le résultat d"une évaluation n"est pas enregistré, et est de fait perdu une fois affiché.
Cependant, dans la plupart des cas, il est utile de conserver la sortie dans une variable. Ilsuffit alors d"attribuer un nom et un contenu à un objet. La flèche d"affectation<-permet cela.
L"affichage du contenu de l"objetxse fait en inscrivant son nom et en l"évaluant. 2quotesdbs_dbs19.pdfusesText_25