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 .