Comment calculer les scores Z dans R



En statistiques, un score z nous indique à combien d’écarts types une valeur se trouve par rapport à la moyenne. Nous utilisons la formule suivante pour calculer un z-score :

z = (X – μ) / σ

où:

  • X est une valeur de données brutes unique
  • μ est la moyenne de la population
  • σ est l’écart type de la population

Ce didacticiel explique comment calculer les scores z pour les valeurs de données brutes dans R.

Exemple 1 : Trouver des scores Z pour un seul vecteur

Le code suivant montre comment trouver le score z pour chaque valeur de données brutes dans un vecteur :

#create vector of data
data <- c(6, 7, 7, 12, 13, 13, 15, 16, 19, 22)

#find z-score for each data value 
z_scores <- (data-mean(data))/sd(data)

#display z-scores 
z_scores

[1] -1.3228757 -1.1338934 -1.1338934 -0.1889822  0.0000000  0.0000000
[7]  0.3779645  0.5669467  1.1338934  1.7008401

Chaque score z nous indique à combien d’écarts types une valeur individuelle se trouve par rapport à la moyenne. Par exemple:

  • La première valeur de données brutes de « 6 » est 1,323 écarts-types en dessous de la moyenne.
  • La cinquième valeur de données brutes, « 13 », est à 0 écart type de la moyenne, c’est-à-dire qu’elle est égale à la moyenne.
  • La dernière valeur de données brutes de « 22 » est de 1,701 écarts-types au-dessus de la moyenne.

Exemple 2 : Rechercher des scores Z pour une seule colonne dans un DataFrame

Le code suivant montre comment trouver le score z pour chaque valeur de données brutes dans une seule colonne d’un dataframe :

#create dataframe
df <- data.frame(assists = c(4, 4, 6, 7, 9, 13),
                 points = c(24, 29, 13, 15, 19, 22),
                 rebounds = c(5, 5, 7, 8, 14, 15))

#find z-score for each data value in the 'points' column
z_scores <- (df$points-mean(df$points))/sd(df$points)

#display z-scores 
z_scores

[1]  0.6191904  1.4635409 -1.2383807 -0.9006405 -0.2251601  0.2814502

Chaque score z nous indique à combien d’écarts types une valeur individuelle se trouve par rapport à la moyenne. Par exemple:

  • La première valeur de données brutes de « 24 » est de 0,619 écart-type au-dessus de la moyenne.
  • La deuxième valeur des données brutes, « 29 », est de 1,464 écarts-types au-dessus de la moyenne.
  • La troisième valeur de données brutes, « 13 », est inférieure de 1,238 écart-type à la moyenne.

Et ainsi de suite.

Exemple 3 : Rechercher des scores Z pour chaque colonne d’un DataFrame

Le code suivant montre comment trouver le score z pour chaque valeur de données brutes dans chaque colonne d’une trame de données à l’aide de la fonction sapply() .

#create dataframe
df <- data.frame(assists = c(4, 4, 6, 7, 9, 13),
                 points = c(24, 29, 13, 15, 19, 22),
                 rebounds = c(5, 5, 7, 8, 14, 15))

#find z-scores of each column
sapply(df, function(df) (df-mean(df))/sd(df))

         assists     points   rebounds
[1,] -0.92315712  0.6191904 -0.9035079
[2,] -0.92315712  1.4635409 -0.9035079
[3,] -0.34011052 -1.2383807 -0.4517540
[4,] -0.04858722 -0.9006405 -0.2258770
[5,]  0.53445939 -0.2251601  1.1293849
[6,]  1.70055260  0.2814502  1.3552619

Les scores z pour chaque valeur individuelle sont affichés par rapport à la colonne dans laquelle ils se trouvent. Par exemple :

  • La première valeur de « 4 » dans la première colonne est de 0,923 écart-type en dessous de la valeur moyenne de sa colonne.
  • La première valeur de « 24 » dans la deuxième colonne est de 0,619 écart-type au-dessus de la valeur moyenne de sa colonne.
  • La première valeur de « 9 » dans la troisième colonne est inférieure de 0,904 écart-type à la valeur moyenne de sa colonne.

Et ainsi de suite.

Vous pouvez trouver plus de didacticiels R ici .

Ajouter un commentaire

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