Come riorganizzare le colonne in r


Spesso potresti voler riorganizzare le colonne in un frame di dati in R.

Fortunatamente, questo è facile da fare utilizzando la funzione select() del pacchetto dplyr .

 library (dplyr)

Questo tutorial mostra diversi esempi di come utilizzare questa funzione nella pratica utilizzando il seguente frame di dati:

 #create data frame
df <- data.frame(player = c('a', 'b', 'c', 'd', 'e'),
                 position = c('G', 'F', 'F', 'G', 'G'),
                 points = c(12, 15, 19, 22, 32),
                 rebounds = c(5, 7, 7, 12, 11))

#view data frame
df

  player position points rebounds
1 to G 12 5
2 b F 15 7
3 c F 19 7
4 d G 22 12
5th G 32 11

Esempio 1: sposta una colonna nella prima posizione

Il codice seguente mostra come spostare una colonna specifica in un frame di dati nella prima posizione:

 #move column 'points' to first position
df %>% select(points, everything() )

  points player position rebounds
1 12 a G 5
2 15 b F 7
3 19 c F 7
4 22 d G 12
5 32nd G 11

Questo codice dice a dplyr di selezionare prima la colonna dei punti, quindi di includere tutte le altre colonne dopo i punti.

Esempio 2: sposta una colonna all’ultima posizione

Il codice seguente mostra come spostare una colonna specifica in un frame di dati nell’ultima posizione:

 #move column 'points' to last position
df %>% select(-points, points)

  player position rebounds points
1 to G 5 12
2 b F 7 15
3c F 7 19
4 d G 12 22
5th G 11 32

Questo codice dice a dplyr di selezionare tutte le colonne tranne la colonna dei punti, quindi selezionare nuovamente la colonna dei punti. Ciò ha l’effetto di spostare la colonna di punti nell’ultima posizione nel frame di dati.

Esempio 3: riorganizzare più colonne

Il codice seguente mostra come riorganizzare più colonne contemporaneamente in un ordine specifico:

 #change all column names to uppercase
df %>% select(rebounds, position, points, player)

  rebounds position points player
1 5 G 12 a
2 7 F 15 b
3 7 F 19 c
4 12 G 22 d
5 11 G 32 e

Esempio 4: riorganizzare le colonne in ordine alfabetico

Il codice seguente mostra come ordinare le colonne in ordine alfabetico:

 #order columns alphabetically
df %>% select(order(colnames(.)))

  player points position rebounds
1 to 12 G 5
2 b 15 F 7
3 c 19 F 7
4 d 22 G 12
5 th 32 G 11

Esempio 5: ordine inverso delle colonne

Il codice seguente mostra come invertire l’ordine delle colonne in un frame di dati:

 #reverse column order
df %>% select(rebounds:player, everything() )

  rebound points position player
1 5 12 G a
2 7 15 F b
3 7 19 F c
4 12 22 L d
5 11 32 G e

Nota : puoi trovare la documentazione completa per la funzione select() qui .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni in dplyr:

Come selezionare le colonne per indice utilizzando dplyr
Come selezionare le colonne per nome usando dplyr
Come aggiungere colonne al frame di dati utilizzando dplyr

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *