Comment utiliser la fonction Unite dans R (avec exemples)



La fonction unit() du package Tidyr peut être utilisée pour unir plusieurs colonnes de bloc de données en une seule colonne.

Cette fonction utilise la syntaxe de base suivante :

unit(données, col, into, sep)

où:

  • data : Nom de la trame de données
  • col : Nom de la nouvelle colonne unie
  • : Vecteur de noms pour les colonnes à réunir
  • sep : Comment joindre les données dans la nouvelle colonne unie

Les exemples suivants montrent comment utiliser cette fonction dans la pratique.

Exemple 1 : unir deux colonnes en une seule colonne

Supposons que nous ayons le bloc de données suivant dans R :

#create data frame
df <- data.frame(player=c('A', 'A', 'B', 'B', 'C', 'C'),
                 year=c(1, 2, 1, 2, 1, 2),
                 points=c(22, 29, 18, 11, 12, 19),
                 assists=c(2, 3, 6, 8, 5, 2))

#view data frame
df

  player year points assists
1      A    1     22       2
2      A    2     29       3
3      B    1     18       6
4      B    2     11       8
5      C    1     12       5
6      C    2     19       2

Nous pouvons utiliser la fonction unite() pour réunir les colonnes « points » et « assists » en une seule colonne :

library(tidyr)

#unite points and assists columns into single column
unite(df, col='points-assists', c('points', 'assists'), sep='-')

  player year points-assists
1      A    1           22-2
2      A    2           29-3
3      B    1           18-6
4      B    2           11-8
5      C    1           12-5
6      C    2           19-2

Exemple 2 : unir plus de deux colonnes

Supposons que nous ayons le bloc de données suivant dans R :

#create data frame
df2 <- data.frame(player=c('A', 'A', 'B', 'B', 'C', 'C'),
                  year=c(1, 2, 1, 2, 1, 2),
                  points=c(22, 29, 18, 11, 12, 19),
                  assists=c(2, 3, 6, 8, 5, 2),
                  blocks=c(2, 3, 3, 2, 1, 0))

#view data frame
df2

  player year points assists blocks
1      A    1     22       2      2
2      A    2     29       3      3
3      B    1     18       6      3
4      B    2     11       8      2
5      C    1     12       5      1
6      C    2     19       2      0

Nous pouvons utiliser la fonction unite() pour unir les colonnes de points, d’assistances et de blocages en une seule colonne :

library(tidyr)

#unite points, assists, and blocks column into single column
unite(df2, col='stats', c('points', 'assists', 'blocks'), sep='/')

  player year   stats
1      A    1  22/2/2
2      A    2  29/3/3
3      B    1  18/6/3
4      B    2  11/8/2
5      C    1  12/5/1
6      C    2  19/2/0

Ressources additionnelles

L’objectif du package Tidyr est de créer des données « ordonnées », qui présentent les caractéristiques suivantes :

  • Chaque colonne est une variable.
  • Chaque ligne est une observation.
  • Chaque cellule est une valeur unique.

Le package Tidyr utilise quatre fonctions principales pour créer des données ordonnées :

1. La fonction spread() .

2. La fonction rassembler() .

3. La fonction séparée() .

4. La fonction unit() .

Si vous maîtrisez ces quatre fonctions, vous serez en mesure de créer des données « ordonnées » à partir de n’importe quelle trame de données.

Ajouter un commentaire

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