Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment diviser les données en groupes de taille égale dans R



Vous pouvez utiliser la fonction cut_number() du package ggplot2 dans R pour diviser un vecteur en groupes de taille égale.

Cette fonction utilise la syntaxe de base suivante :

numéro_coupe (x, n)

où:

  • x : Nom du vecteur numérique à diviser
  • n : Nombre de groupes

L’exemple suivant montre comment utiliser cette fonction dans la pratique.

Exemple : Comment diviser les données en groupes de taille égale dans R

Supposons que nous ayons le bloc de données suivant dans R qui contient des informations sur les points marqués par 12 joueurs de basket différents

#create data frame
df <- data.frame(player=LETTERS[1:12],
                 points=c(1, 2, 2, 2, 4, 5, 7, 9, 12, 14, 15, 22))

#view data frame
df

   player points
1       A      1
2       B      2
3       C      2
4       D      2
5       E      4
6       F      5
7       G      7
8       H      9
9       I     12
10      J     14
11      K     15
12      L     22

Connexe : Comment utiliser la fonction LETTRES dans R

Nous pouvons utiliser la fonction cut_number() du package ggplot2 pour créer une nouvelle colonne appelée group qui divise chaque ligne du bloc de données en l’un des trois groupes en fonction de la valeur dans la colonne des points :

library(ggplot2)

#create new column that splits data into three equal sized groups based on points
df$group <- cut_number(df$points, 3)

#view updated data frame
df

   player points     group
1       A      1  [1,3.33]
2       B      2  [1,3.33]
3       C      2  [1,3.33]
4       D      2  [1,3.33]
5       E      4 (3.33,10]
6       F      5 (3.33,10]
7       G      7 (3.33,10]
8       H      9 (3.33,10]
9       I     12   (10,22]
10      J     14   (10,22]
11      K     15   (10,22]
12      L     22   (10,22]

Chacun des 12 joueurs a été placé dans l’un des trois groupes en fonction de la valeur indiquée dans la colonne des points .

D’après le résultat, nous pouvons voir qu’il existe 3 groupes distincts :

  • groupe 1 : la valeur des points est comprise entre 1 et 3,33.
  • groupe 2 : la valeur des points est comprise entre 3,33 et 10.
  • groupe 3 : la valeur des points est comprise entre 10 et 22.

Nous pouvons voir que quatre joueurs ont été placés dans chaque groupe.

Si vous souhaitez que la colonne de groupe affiche les groupes sous forme de valeurs entières, vous pouvez envelopper la fonction cut_number() dans une fonction as.numeric() :

library(ggplot2)

#create new column that splits data into three equal sized groups based on points
df$group <- as.numeric(cut_number(df$points, 3))

#view updated data frame
df

   player points group
1       A      1     1
2       B      2     1
3       C      2     1
4       D      2     1
5       E      4     2
6       F      5     2
7       G      7     2
8       H      9     2
9       I     12     3
10      J     14     3
11      K     15     3
12      L     22     3

La nouvelle colonne de groupe contient désormais les valeurs 1, 2 et 3 pour indiquer à quel groupe appartient le joueur.

Encore une fois, chaque groupe comprend quatre joueurs.

Remarque : Pour diviser la colonne de points en plus de trois groupes, remplacez simplement le 3 dans la fonction cut_number() par un nombre différent.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :

Comment diviser un bloc de données dans R
Comment diviser les données en ensembles de formation et de test dans R
Comment effectuer un regroupement de données dans R

Ajouter un commentaire

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