Comment diviser un vecteur en morceaux dans R



Vous pouvez utiliser la syntaxe de base suivante pour diviser un vecteur en morceaux dans R :

chunks <- split(my_vector, cut(seq_along(my_vector), 4, labels=FALSE))

Cet exemple particulier divise le vecteur appelé my_vector en 4 morceaux de taille égale.

Pour diviser le vecteur en un nombre différent de morceaux, remplacez simplement le 4 par une valeur différente.

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

Exemple : diviser un vecteur en morceaux dans R

Supposons que nous ayons le vecteur suivant dans R qui contient 12 éléments au total :

#create vector
my_vector <- c(2, 2, 4, 7, 6, 8, 9, 8, 8, 12, 5, 4)

#view length of vector
length(my_vector)

[1] 12

Nous pouvons utiliser la syntaxe suivante pour diviser le vecteur en quatre morceaux :

#split vector into four chunks
chunks <- split(my_vector, cut(seq_along(my_vector), 4, labels=FALSE))

#view chunks
chunks

$`1`
[1] 2 2 4

$`2`
[1] 7 6 8

$`3`
[1] 9 8 8

$`4`
[1] 12  5  4

À partir du résultat, nous pouvons voir :

  • Le premier morceau contient les valeurs 2, 2, 4.
  • Le deuxième morceau contient les valeurs 7, 6, 8.
  • Le troisième morceau contient les valeurs 9, 8, 8.
  • Le quatrième morceau contient les valeurs 12, 5, 4.

Notez que nous pouvons également utiliser des crochets pour accéder à un morceau spécifique :

#access second chunk only
chunks[2]

$`2`
[1] 7 6 8

Si nous modifions la valeur dans la fonction split() , nous pouvons diviser le vecteur en un nombre différent de morceaux.

Par exemple, nous pourrions diviser le vecteur en six morceaux :

#split vector into six chunks
chunks <- split(my_vector, cut(seq_along(my_vector), 6, labels=FALSE))

#view chunks
chunks

$`1`
[1] 2 2

$`2`
[1] 4 7

$`3`
[1] 6 8

$`4`
[1] 9

$`5`
[1] 8 8

$`6`
[1] 12  5

Notez qu’il y a maintenant six morceaux et que chaque morceau contient deux éléments.

Remarque : Si votre vecteur ne contient pas un nombre pair d’éléments, cette méthode divisera toujours le vecteur en groupes de taille aussi égale que possible.

Ressources additionnelles

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

Comment filtrer un vecteur dans R
Comment supprimer les valeurs NA du vecteur dans R
Comment supprimer des éléments spécifiques du vecteur dans R

Ajouter un commentaire

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