Comment calculer les fréquences relatives à l’aide de dplyr



Souvent, vous souhaiterez peut-être calculer les fréquences/proportions relatives des valeurs dans une ou plusieurs colonnes d’un bloc de données dans R.

Heureusement, cela est facile à faire en utilisant les fonctions du package dplyr . Ce didacticiel montre comment utiliser ces fonctions pour calculer les fréquences relatives sur la trame de données suivante :

#create data frame
df <- data.frame(team = c('A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 position = c('G', 'F', 'F', 'G', 'G', 'G', 'F'),
                 points = c(12, 15, 19, 22, 32, 34, 39))

#view data frame
df

  team position points
1    A        G     12
2    A        F     15
3    A        F     19
4    B        G     22
5    B        G     32
6    B        G     34
7    B        F     39

Exemple 1 : Fréquence relative d’une variable

Le code suivant montre comment calculer la fréquence relative de chaque équipe dans le bloc de données :

library(dplyr)

df %>%
  group_by(team) %>%
  summarise(n = n()) %>%
  mutate(freq = n / sum(n))

# A tibble: 2 x 3
  team       n  freq
    
1 A          3 0.429
2 B          4 0.571

Cela nous indique que l’équipe A représente 42,9 % de toutes les lignes du bloc de données tandis que l’équipe B représente les 57,1 % des lignes restantes. Notez qu’ensemble, ils totalisent 100 %.

Connexe : Le guide complet : Comment regrouper et résumer des données dans R

Exemple 2 : Fréquence relative de plusieurs variables

Le code suivant montre comment calculer la fréquence relative des positions par équipe :

library(dplyr)

df %>%
  group_by(team, position) %>%
  summarise(n = n()) %>%
  mutate(freq = n / sum(n))

# A tibble: 4 x 4
# Groups:   team [2]
  team   position     n  freq
       
1 A      F            2 0.667
2 A      G            1 0.333
3 B      F            1 0.250
4 B      G            3 0.750

Cela nous dit que :

  • 66,7% des joueurs de l’équipe A sont en position F.
  • 33,3% des joueurs de l’équipe A sont en position G.
  • 25,0% des joueurs de l’équipe A sont en position F.
  • 75,0% des joueurs de l’équipe B sont en position G.

Connexe : Comment utiliser Mutate pour créer de nouvelles variables dans R

Exemple 3 : Afficher les fréquences relatives sous forme de pourcentages

Le code suivant montre comment calculer la fréquence relative des positions par équipe et comment afficher ces fréquences relatives sous forme de pourcentages :

library(dplyr)

df %>%
  group_by(team, position) %>%
  summarise(n = n()) %>%
  mutate(freq = paste0(round(100 * n/sum(n), 0), '%'))

# A tibble: 4 x 4
# Groups:   team [2]
  team   position     n freq 
       
1 A      F            2 67%  
2 A      G            1 33%  
3 B      F            1 25%  
4 B      G            3 75%

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 *