R - Moyenne, Médiane et Mode

Bonjour, aspirants programmeurs R ! Aujourd'hui, nous allons plonger dans le monde de la statistique descriptive en utilisant R. En tant que votre enseignant de science informatique du quartier, je suis là pour vous guider à travers les concepts de moyenne, médiane et mode. Ne vous inquiétez pas si vous n'avez jamais écrit une ligne de code auparavant - nous allons commencer du tout début et progresser ensemble.

R - Mean, Median & Mode

Moyenne

Commençons par la moyenne, qui est probablement la mesure de tendance centrale la plus courante. En termes simples, c'est ce que nous appelons souvent "l'average".

Calcul de Base de la Moyenne

Pour calculer la moyenne en R, nous utilisons la fonction mean(). Voici un exemple simple :

numbers <- c(10, 20, 30, 40, 50)
result <- mean(numbers)
print(result)

Cela affichera : 30

Reprenons cela :

  1. Nous créons un vecteur appelé numbers en utilisant la fonction c().
  2. Nous utilisons la fonction mean() pour calculer l'average de ces nombres.
  3. Nous stockons le résultat dans une variable appelée result.
  4. Enfin, nous affichons le résultat.

Moyenne avec des Valeurs Manquantes

Que se passe-t-il si nous avons des données manquantes, représentées par NA en R ? Voyons voir :

numbers_with_na <- c(10, 20, NA, 40, 50)
result_with_na <- mean(numbers_with_na)
print(result_with_na)

Cela affichera : NA

Oups ! R renvoie NA parce qu'il ne sait pas comment gérer la valeur manquante. Mais ne vous inquiétez pas, nous avons une solution !

Application de l'Option NA

Nous pouvons dire à R d'ignorer les valeurs NA en utilisant l'option na.rm :

numbers_with_na <- c(10, 20, NA, 40, 50)
result_na_removed <- mean(numbers_with_na, na.rm = TRUE)
print(result_na_removed)

Cela affichera : 30

Bien mieux ! En setting na.rm = TRUE, nous disons à R de supprimer les valeurs NA avant de calculer la moyenne.

Application de l'Option Trim

Parfois, nous voulons exclure des valeurs extrêmes de notre calcul de la moyenne. C'est là que l'option trim devient utile. Elle nous permet de tronquer un pourcentage de valeurs des deux extrémités des données avant de calculer la moyenne.

numbers <- c(1, 2, 3, 4, 5, 100)  # Notez l'outlier 100
result_trimmed <- mean(numbers, trim = 0.1)
print(result_trimmed)

Cela affichera une valeur proche de 3.5

En setting trim = 0.1, nous supprimons 10% des données de chaque extrémité avant de calculer la moyenne. Cela aide à réduire l'impact des valeurs extrêmes.

Médiane

La médiane est la valeur du milieu lorsqu'un jeu de données est ordonné du plus petit au plus grand. Elle est moins affectée par les valeurs extrêmes que la moyenne.

numbers <- c(1, 3, 5, 7, 9, 11, 13)
result_median <- median(numbers)
print(result_median)

Cela affichera : 7

La fonction median() fonctionne de manière similaire à mean(). Elle a également une option na.rm pour gérer les valeurs NA :

numbers_with_na <- c(1, 3, NA, 7, 9, 11, 13)
result_median_na <- median(numbers_with_na, na.rm = TRUE)
print(result_median_na)

Cela affichera : 8

Mode

Curieusement, R n'a pas de fonction intégrée pour le mode (la valeur la plus fréquente). Mais ne vous inquiétez pas ! Nous pouvons créer notre propre fonction :

get_mode <- function(v) {
uniqv <- unique(v)
uniqv[which.max(tabulate(match(v, uniqv)))]
}

numbers <- c(1, 2, 2, 3, 3, 3, 4, 4, 5)
result_mode <- get_mode(numbers)
print(result_mode)

Cela affichera : 3

Reprenons cette fonction personnalisée :

  1. unique(v) obtient les valeurs uniques dans le vecteur.
  2. match(v, uniqv) trouve les positions des correspondances.
  3. tabulate() compte les occurrences.
  4. which.max() trouve la position du comptage maximum.
  5. Nous retournons la valeur à cette position.

Résumé des Fonctions

Voici un tableau pratique résumant les fonctions que nous avons apprises :

Mesure Fonction Options
Moyenne mean() na.rm, trim
Médiane median() na.rm
Mode Fonction personnalisée N/A

Souvenez-vous, la pratique fait la perfection ! Essayez ces fonctions avec différents jeux de données et explorez comment le changement des options affecte les résultats.

En conclusion, je suis rappelé d'une histoire de mes premiers jours d'apprentissage de R. J'ai passé des heures à essayer de calculer la moyenne d'un jeu de données, seulement pour realization que j'avais oublié de supprimer les valeurs NA. Ne soyez pas comme moi - vérifiez toujours vos données et utilisez na.rm = TRUE lorsque cela est nécessaire !

Bonne programmation, et que vos aventures statistiques en R soient remplies d'insights et de moments de compréhension !

Credits: Image by storyset