Come utilizzare la funzione dplyr transmute in r (con esempi)
È possibile utilizzare la funzione transmute() in R per aggiungere nuove variabili calcolate a un frame di dati e rimuovere eventuali variabili esistenti.
Questa funzione utilizza la seguente sintassi di base:
df %>% transmute(var_new = var1 * 2)
In questo esempio, una nuova variabile denominata var_new verrà creata moltiplicando una variabile esistente denominata var1 per 2.
Gli esempi seguenti mostrano come utilizzare la funzione transmute() con il seguente frame di dati in R:
#create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
points=c(99, 90, 86, 88, 95),
assists=c(33, 28, 31, 39, 34),
rebounds=c(30, 28, 24, 24, 28))
#view data frame
df
team points assists rebounds
1 A 99 33 30
2 B 90 28 28
3 C 86 31 24
4 D 88 39 24
5 E 95 34 28
Esempio 1: utilizzare transmute() per creare una nuova variabile
Il codice seguente mostra come utilizzare transmute() per creare una nuova variabile:
library (dplyr)
#create new variable called points2
df %>% transmute(points2 = points * 2)
points2
1,198
2,180
3,172
4,176
5,190
I valori Point2 sono uguali ai valori originali della colonna point moltiplicati per due.
Si noti che la funzione transmute() in realtà non modifica il frame di dati originale.
Per salvare i risultati della funzione transmute() in un nuovo frame di dati, è necessario memorizzarli in una variabile:
library (dplyr)
#store results of transmute in variable
df_points2 <- df %>% transmute(points2 = points * 2)
#view results
df_points2
points2
1,198
2,180
3,172
4,176
5,190
I risultati di transmute() sono ora memorizzati in un nuovo frame di dati.
Esempio 2: utilizzare transmute() per creare più nuove variabili
Il codice seguente mostra come utilizzare transmute() per creare più nuove variabili da variabili esistenti:
library (dplyr)
#create multiple new variables
df %>%
transmute(
points2 = points * 2,
rebounds_squared = rebounds^2,
assists_half = assists/2,
team_name= paste0(' team_ ', team)
)
points2 rebounds_squared assists_half team_name
1,198,900 16.5 team_A
2 180 784 14.0 team_B
3 172 576 15.5 team_C
4 176 576 19.5 team_D
5 190 784 17.0 team_E
Si noti che sono state create quattro nuove variabili.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni in R:
Come utilizzare la funzione relocate() in dplyr
Come utilizzare la funzione slice() in dplyr
Come filtrare per numero di riga in dplyr