. (Vous pouvez signaler un problème concernant le contenu de cette page ici)Vous voulez partager votre contenu sur R-bloggers ? Cliquez ici si vous avez un blog, ou ici si vous n’en avez pas.

Au cours de la semaine prochaine, nous couvrirons les bases de la création de vos propres histogrammes dans R. Trois options seront explorées : les commandes R de base, ggplot2 et ggvis. Ces articles s’adressent aux utilisateurs R débutants et intermédiaires qui ont besoin d’une ressource accessible et facile à comprendre. Vous souhaitez en savoir plus ? Découvrez les tutoriels R sur DataCamp.

Qu’est-ce qu’un histogramme ?

Un histogramme est une représentation visuelle de la distribution d’un ensemble de données. En tant que telle, la forme d’un histogramme est sa caractéristique la plus évidente et la plus informative : elle vous permet de voir facilement où se trouve une quantité relativement importante de données et où il y a très peu de données à trouver (Verzani 2004). En d’autres termes, vous pouvez voir où se trouve le milieu de votre distribution de données, à quel point les données sont proches de ce milieu et où se trouvent les éventuelles valeurs aberrantes. Exactement à cause de tout cela, les histogrammes sont un excellent moyen d’apprendre à connaître vos données !

Mais à quoi ressemble exactement cette forme spécifique d’un histogramme ? En bref, l’histogramme se compose d’un axe des x, d’un axe des y et de différentes barres de différentes hauteurs. L’axe des y indique la fréquence d’apparition des valeurs en abscisse dans les données, tandis que les barres regroupent des plages de valeurs ou des catégories continues en abscisse. Ce dernier point explique pourquoi les histogrammes n’ont pas d’écarts entre les barres.

Notez que les barres des histogrammes sont souvent appelées « bins » ; Ce tutoriel utilisera également ce nom.

Comment faire un histogramme avec R de base

Étape un – Montrez-moi les données

Puisque les histogrammes nécessitent certaines données pour être tracés en premier lieu, vous faites bien d’importer un ensemble de données ou d’en utiliser un qui est intégré dans R. Ce tutoriel fait usage de deux ensembles de données : l’ensemble de données intégré à R AirPassengers et un ensemble de données nommé chol, stocké dans un fichier .txt et disponible en téléchargement.

chol = read.csv("https://s3.amazonaws.com/assets.datacamp.com/blog_assets/chol.txt", sep = " ") 

Etape deux – Se familiariser avec la fonction Hist()

Vous pouvez simplement réaliser un histogramme en utilisant la fonction hist(), qui calcule un histogramme des valeurs de données données. Vous mettez le nom de votre ensemble de données entre les parenthèses de cette fonction, comme ceci :

hist(AirPassengers)

Ce qui donne l’histogramme suivant :

Cependant, si vous souhaitez sélectionner uniquement une certaine colonne d’un cadre de données, chol par exemple, pour réaliser un histogramme, vous devrez utiliser la fonction hist() avec le nom du jeu de données en combinaison avec le signe $, suivi du nom de la colonne :

hist(chol$AGE) #computes a histogram of the data values in the column AGE of the dataframe named "chol”

Etape trois – Faites monter la fonction Hist() d’un cran

Les histogrammes de la section précédente ont l’air un peu ternes, n’est-ce pas ? Les visualisations par défaut ne contribuent généralement pas beaucoup à la compréhension de vos histogrammes. Vous devez donc faire un pas de plus pour parvenir à une compréhension meilleure et plus facile de vos histogrammes. Heureusement, ce n’est pas trop difficile : R permet plusieurs façons simples et rapides d’optimiser la visualisation des diagrammes, tout en utilisant la fonction hist().

Pour adapter votre histogramme, il vous suffit d’ajouter des arguments supplémentaires à la fonction hist(), comme ceci :

hist(AirPassengers, main="Histogram for Air Passengers", xlab="Passengers", border="blue", col="green", xlim=c(100,700), las=1, breaks=5)

Ce code calcule un histogramme des valeurs de données de l’ensemble de données AirPassengers, lui donne pour titre « Histogramme pour les passagers aériens », étiquette l’axe des x comme « Passagers », donne une bordure bleue et une couleur verte aux bacs, tout en limitant l’axe des x de 100 à 700, en faisant pivoter les valeurs imprimées sur l’axe des y de 1 et en changeant la largeur du bac à 5.

Surpris par cette grosse chaîne de code ? Pas d’inquiétude ! Décomposons-la en plus petits morceaux pour voir ce que fait chaque argument.

Noms/couleurs

Changer le titre de l’histogramme en ajoutant main comme argument à la fonction hist() :

hist(AirPassengers, main="Histogram for Air Passengers") #Histogram of the AirPassengers dataset with title "Histogram for Air Passengers”

Pour ajuster l’étiquette de l’axe des x, ajoutez xlab. De même, vous pouvez utiliser ylab pour étiqueter l’axe des y :

hist(AirPassengers, xlab="Passengers", ylab="Frequency of Passengers") #Histogram of the AirPassengers dataset with changed labels on the x-and y-axes

Si vous souhaitez modifier les couleurs de l’histogramme par défaut, il vous suffit d’ajouter les arguments border ou col. Vous pouvez ajuster, comme les noms eux-mêmes le laissent un peu deviner, les bordures ou les couleurs de votre histogramme.

hist(AirPassengers, border="blue", col="green") #Histogram of the AirPassengers dataset with blue-border bins with green filling

Tip n’oubliez pas de mettre les couleurs et les noms entre "".

Axes X et Y

Changez la plage des valeurs x et y sur les axes en ajoutant xlim et ylim comme arguments à la fonction hist() :

hist(AirPassengers, xlim=c(100,700), ylim=c(0,30)) #Histogram of the AirPassengers dataset with the x-axis limited to values 100 to 700 and the y-axis limited to values 0 to 30

Notez que la fonction c() est utilisée pour délimiter les valeurs sur les axes lorsque vous utilisez xlim et ylim. Il prend deux valeurs : la première est la valeur de début, la seconde est la valeur de fin

Rotter les étiquettes sur l’axe des y en ajoutant « las = 1 » comme argument. las peut être 0, 1, 2 ou 3.

hist(AirPassengers, las=1) #Histogram of the AirPassengers dataset with the y-values projected horizontally

Selon l’option choisie, le placement de l’étiquette sera différent : si vous choisissez 0, l’étiquette sera toujours parallèle à l’axe (ce qui est le défaut) ; Si vous choisissez 1, l’étiquette sera mise horizontalement. Choisissez 2 si vous voulez qu’elle soit perpendiculaire à l’axe et 3 si vous voulez qu’elle soit placée verticalement.

Casiers

Vous pouvez modifier la largeur des casiers en ajoutant breaks en argument, ainsi que le nombre de points d’arrêt que vous souhaitez avoir :

hist(AirPassengers, breaks=5) #Histogram of the AirPassengers dataset with 5 breakpoints

Si vous voulez avoir plus de contrôle sur les points d’arrêt entre les bacs, vous pouvez enrichir l’argument breaks en lui donnant un vecteur de points d’arrêt. Vous pouvez le faire en utilisant la fonction c():

hist(AirPassengers, breaks=c(100, 300, 500, 700)) #Compute a histogram for the data values in AirPassengers, and set the bins such that they run from 100 to 300, 300 to 500 and 500 to 700.

Cependant, la fonction c() peut rendre votre code très désordonné parfois. C’est pourquoi vous pouvez plutôt ajouter =seq(x, y, z). Les valeurs de x, y et z sont déterminées par vous-même et représentent, par ordre d’apparition, le numéro de début de l’axe des x, le numéro de fin de l’axe des x et l’intervalle dans lequel ces numéros apparaissent.

Notez que vous pouvez également combiner les deux fonctions :

hist(AirPassengers, breaks=c(100, seq(200,700, 150))) #Make a histogram for the AirPassengers dataset, start at 100 on the x-axis, and from values 200 to 700, make the bins 150 wide

Tip étudiez bien les changements de l’axe des ordonnées lorsque vous expérimentez les nombres utilisés dans l’argument seq !

Notez que la largeur différente des barres ou des bacs pourrait dérouter les gens et que les parties les plus intéressantes de vos données pourraient se retrouver non mises en évidence ou même cachées lorsque vous appliquez cette technique à votre histogramme original. Donc, il suffit d’expérimenter avec cela et de voir ce qui convient le mieux à vos objectifs !

Extra : Densité de probabilité

La fonction hist() vous montre par défaut la fréquence d’un certain bin sur l’axe des ordonnées. Cependant, si vous voulez voir quelle est la probabilité qu’un intervalle de valeurs de l’axe des x se produise, vous aurez besoin d’une densité de probabilité plutôt que de la fréquence. Nous voulons donc demander un histogramme de proportions. Vous pouvez changer cela en définissant l’argument freq à false ou en définissant l’argument prob à true :

hist(AirPassengers, main="Histogram for Air Passengers", xlab="Passengers", border="blue", col="green", xlim=c(100,700), las=1, breaks=5, prob = TRUE)#Histogram of the AirPassengers dataset with a probability density expressed through the y-axis instead of the regular frequency.

Après avoir appelé la fonction hist() pour créer le graphique de densité de probabilité ci-dessus, vous pouvez par la suite ajouter une courbe de densité à votre ensemble de données en utilisant la fonction lines() :

lines(density(AirPassengers)) #Get a density curve to go along with your AirPassengers histogram

Notez que cette fonction nécessite que vous définissiez d’abord l’argument prob de l’histogramme à true !

Quatrième étape . Vous voulez aller plus loin ?

Pour une liste exhaustive de tous les arguments que vous pouvez ajouter à la fonction hist(), consultez l’article RDocumentation sur la fonction hist().

C’est le premier de 3 posts sur la création d’histogrammes avec R. Le prochain post couvrira la création d’histogrammes à l’aide de ggplot2.

Vous avez repéré une erreur ? Envoyez-nous un tweet

The post How to Make a Histogram with Basic R appeared first on The DataCamp Blog .

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *