Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment tracer une distribution normale dans R



Pour tracer une distribution normale dans R, nous pouvons soit utiliser base R, soit installer un package plus sophistiqué comme ggplot2.

Utiliser BaseR

Voici trois exemples de création d’un diagramme de distribution normale à l’aide de Base R.

Exemple 1 : distribution normale avec moyenne = 0 et écart type = 1

Pour créer un diagramme de distribution normale avec moyenne = 0 et écart type = 1, nous pouvons utiliser le code suivant :

#Create a sequence of 100 equally spaced numbers between -4 and 4
x <- seq(-4, 4, length=100)

#create a vector of values that shows the height of the probability distribution
#for each value in x
y <- dnorm(x)

#plot x and y as a scatterplot with connected lines (type = "l") and add
#an x-axis with custom labels
plot(x,y, type = "l", lwd = 2, axes = FALSE, xlab = "", ylab = "")
axis(1, at = -3:3, labels = c("-3s", "-2s", "-1s", "mean", "1s", "2s", "3s"))

Cela génère le tracé suivant :

Exemple 2 : distribution normale avec moyenne = 0 et écart type = 1 (moins de code)

Nous pourrions également créer un diagramme de distribution normal sans définir x et y , et simplement en utilisant la fonction « courbe » en utilisant le code suivant :

curve(dnorm, -3.5, 3.5, lwd=2, axes = FALSE, xlab = "", ylab = "")
axis(1, at = -3:3, labels = c("-3s", "-2s", "-1s", "mean", "1s", "2s", "3s"))

Cela génère exactement le même tracé :

Exemple 3 : distribution normale avec moyenne et écart type personnalisés

Pour créer un diagramme de distribution normale avec une moyenne et un écart type définis par l’utilisateur, nous pouvons utiliser le code suivant :

#define population mean and standard deviation
population_mean <- 50
population_sd <- 5

#define upper and lower bound
lower_bound <- population_mean - population_sd
upper_bound <- population_mean + population_sd

#Create a sequence of 1000 x values based on population mean and standard deviation
x <- seq(-4, 4, length = 1000) * population_sd + population_mean

#create a vector of values that shows the height of the probability distribution
#for each value in x
y <- dnorm(x, population_mean, population_sd)

#plot normal distribution with customized x-axis labels
plot(x,y, type = "l", lwd = 2, axes = FALSE, xlab = "", ylab = "")
sd_axis_bounds = 5
axis_bounds <- seq(-sd_axis_bounds * population_sd + population_mean,
                    sd_axis_bounds * population_sd + population_mean,
                    by = population_sd)
axis(side = 1, at = axis_bounds, pos = 0)

Cela génère le tracé suivant :

Utiliser ggplot2

Une autre façon de créer un tracé de distribution normal dans R consiste à utiliser le package ggplot2. Voici deux exemples de création d’un tracé de distribution normal à l’aide de ggplot2.

Exemple 1 : distribution normale avec moyenne = 0 et écart type = 1

Pour créer un diagramme de distribution normale avec moyenne = 0 et écart type = 1, nous pouvons utiliser le code suivant :

#install (if not already installed) and load ggplot2
if(!(require(ggplot2))){install.packages('ggplot2')}

#generate a normal distribution plot
ggplot(data.frame(x = c(-4, 4)), aes(x = x)) +
stat_function(fun = dnorm)

Cela génère le tracé suivant :

Exemple 2 : distribution normale utilisant l’ensemble de données ‘mtcars’

Le code suivant illustre comment créer une distribution normale pour la colonne miles par gallon dans l’ensemble de données R intégré mtcars :

ggplot(mtcars, aes(x = mpg)) +
stat_function(
fun = dnorm,
args = with(mtcars, c(mean = mean(mpg), sd = sd(mpg)))
) +
scale_x_continuous("Miles per gallon")

Cela génère le tracé suivant :

Ajouter un commentaire

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