Guide de Distribution Normale en R : Un Guide Amical pour les Débutants

Salut là, futurs magiciens de R ! ? Aujourd'hui, nous allons plonger dans le monde fascinant des distributions normales en R. Ne vous inquiétez pas si vous n'avez jamais programmé auparavant - je serai votre guide amical tout au long de ce voyage, et nous avancerons pas à pas. À la fin de ce tutoriel, vous serez étonné de ce que vous pouvez faire avec quelques lignes de code !

R - Normal Distribution

Qu'est-ce qu'une Distribution Normale ?

Avant de nous lancer dans R, parlons rapidement de ce qu'est une distribution normale. Imaginez que vous mesurez la taille de tous les élèves de votre école. Vous trouveriez probablement que la plupart des gens sont d'une taille moyenne, avec moins de personnes très grandes ou très petites. Si vous le représentez sur un graphique, cela ressemblerait à une courbe en cloche. C'est une distribution normale !

En statistiques, nous utilisons des distributions normales tout le temps, et R a quelques fonctions fantastiques pour nous aider à travailler avec elles. Explorons ces fonctions une par une.

Les Fonctions de Distribution Normale en R

R fournit quatre principales fonctions pour travailler avec des distributions normales. Voici un aperçu rapide :

Fonction Objectif
dnorm() Calcule la densité (hauteur) de la distribution normale à un point donné
pnorm() Calcule la probabilité cumulative (aire sous la courbe) jusqu'à un point donné
qnorm() Trouve la valeur (quantile) correspondant à une probabilité donnée
rnorm() Génére des nombres aléatoires suivant une distribution normale

Maintenant, plongeons dans chacune de ces fonctions et voyons comment elles fonctionnent !

dnorm(): La Fonction de Densité

La fonction dnorm() nous aide à trouver la hauteur de la courbe de distribution normale à n'importe quel point donné. C'est comme demander, " Quelle est la probabilité de cette valeur spécifique ?"

Essayons un exemple :

# Calculer la densité à x = 0 pour une distribution normale standard
result <- dnorm(0)
print(result)

Lorsque vous exécutez ce code, vous verrez :

[1] 0.3989423

Cela signifie que la hauteur de la courbe de distribution normale standard à x = 0 est d'environ 0.3989.

Mais que faire si nous voulons changer la moyenne ou l'écart-type ? Pas de problème ! Essayons :

# Calculer la densité à x = 1 pour une distribution normale avec une moyenne = 2 et sd = 0.5
result <- dnorm(1, mean = 2, sd = 0.5)
print(result)

Sortie :

[1] 0.1079819

Voyez comme c'était simple ? Nous avons simplement indiqué à R que nous voulions une distribution normale avec une moyenne de 2 et un écart-type de 0.5, puis avons demandé la densité à x = 1.

pnorm(): La Fonction de Probabilité Cumulative

Passons maintenant à pnorm(). Cette fonction calcule la probabilité de получить une valeur inférieure ou égale à un point donné. C'est comme demander, " Quelle est la chance d'obtenir une valeur aussi basse ou plus basse ?"

Voici un exemple :

# Calculer la probabilité d'obtenir une valeur inférieure ou égale à 1.96
# dans une distribution normale standard
result <- pnorm(1.96)
print(result)

Sortie :

[1] 0.9750021

Cela nous indique qu'il y a environ 97.5% de chances d'obtenir une valeur inférieure ou égale à 1.96 dans une distribution normale standard.

Fun fact : C'est pourquoi 1.96 est souvent utilisé en statistiques pour les intervalles de confiance à 95% !

Essayons un autre exemple avec une moyenne et un écart-type différents :

# Calculer la probabilité d'obtenir une valeur inférieure ou égale à 70
# dans une distribution normale avec une moyenne = 60 et sd = 10
result <- pnorm(70, mean = 60, sd = 10)
print(result)

Sortie :

[1] 0.8413447

Cela signifie qu'il y a environ 84.1% de chances d'obtenir une valeur inférieure ou égale à 70 dans cette distribution.

qnorm(): La Fonction de Quantile

qnorm() est comme l'inverse de pnorm(). Au lieu de lui donner une valeur et de lui demander la probabilité, nous lui donnons une probabilité et lui demandons la valeur. C'est comme dire, " Quelle valeur me donnerait cette probabilité spécifique ?"

Essayons-le :

# Trouver la valeur qui donne une probabilité cumulative de 0.95
# dans une distribution normale standard
result <- qnorm(0.95)
print(result)

Sortie :

[1] 1.644854

Cela nous indique que 95% des valeurs dans une distribution normale standard sont inférieures à 1.645.

Nous pouvons également utiliser des moyennes et des écarts-types différents :

# Trouver la valeur qui donne une probabilité cumulative de 0.99
# dans une distribution normale avec une moyenne = 100 et sd = 15
result <- qnorm(0.99, mean = 100, sd = 15)
print(result)

Sortie :

[1] 134.8745

Ainsi, dans cette distribution, 99% des valeurs sont inférieures à 134.87.

rnorm(): Générer des Nombres Aléatoires

Enfin, nous avons rnorm(). Cette fonction est comme un générateur de nombres magiques qui suit les règles d'une distribution normale. C'est super utile pour les simulations et la création de données de test.

Voici comment l'utiliser :

# Générer 5 nombres aléatoires d'une distribution normale standard
random_numbers <- rnorm(5)
print(random_numbers)

Sortie (vos nombres seront différents) :

[1] -0.56047565 -0.23017749  1.55870831  0.07050839  0.12928774

Nous pouvons également spécifier une moyenne et un écart-type différents :

# Générer 5 nombres aléatoires d'une distribution normale avec une moyenne = 50 et sd = 10
random_numbers <- rnorm(5, mean = 50, sd = 10)
print(random_numbers)

Sortie (vos nombres seront différents) :

[1] 52.39086 46.08371 47.92569 62.36229 45.45923

N'est-ce pas génial ? Avec une seule ligne de code, nous pouvons générer autant de nombres aléatoires que nous voulons, suivant n'importe quelle distribution normale que nous spécifions !

Conclusion

Et voilà, les amis ! Nous avons traversé le territoire des distributions normales en R, en explorant quatre fonctions puissantes tout au long du chemin. Souvenez-vous, la pratique rend parfait, donc n'ayez pas peur d'expérimenter avec ces fonctions. Essayez différents valeurs, tracez les résultats, et voyez ce qui se passe !

Voici un petit défi pour vous : Essayez d'utiliser rnorm() pour générer 1000 nombres aléatoires, puis utilisez hist() pour tracer un histogramme de ces nombres. Vous verrez la distribution normale prendre vie sous vos yeux !

Bonne programmation, et puissent la distribution normale et vous être toujours ensemble ! ???

Credits: Image by storyset