Jak zamienić wiele wartości w ramce danych za pomocą dplyr
Możesz użyć następującej podstawowej składni, aby zastąpić wiele wartości w ramce danych w R za pomocą funkcji z pakietu dplyr :
library (dplyr) df %>% mutate(var1 = recode(var1, ' oldvalue1 ' = ' newvalue1 ', ' oldvalue2 ' = ' newvalue2 '), var2 = recode(var2, ' oldvalue1 ' = ' newvalue1 ', ' oldvalue2 ' = ' newvalue2 '))
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: Zamień wiele wartości za pomocą dplyr
Załóżmy, że mamy następującą ramkę danych w R, która zawiera informacje o różnych koszykarzach:
#create data frame
df <- data. frame (conf=c('East', 'East', 'West', 'West', 'North'),
position=c('Guard', 'Guard', 'Guard', 'Guard', 'Forward'),
dots=c(22, 25, 29, 13, 18))
#view data frame
df
conf position points
1 East Guard 22
2 East Guard 25
3 West Guard 29
4 West Guard 13
5 North Forward 18
Załóżmy teraz, że chcemy zastąpić następujące wartości w ramce danych:
- Kolumna „conf”:
- Zamień „Wschód” na „E”
- Zmień „Zachód” na „W”
- Zamień „Północ” na „N”
- Kolumna „Pozycja”:
- Zmień „Straż” na „G”
- Zmień „Naprzód” na „F”
Możemy w tym celu użyć funkcji mutate() i recode() :
library (dplyr) #replace multiple values in conf and position columns df %>% mutate(conf = recode(conf, ' East ' = ' E ', ' West ' = ' W ', ' North ' = ' N '), position = recode(position, ' Guard ' = ' G ', ' Forward ' = ' F ')) conf position points 1EG 22 2 EG 25 3 WG 29 4 WG 13 5 NF 18
Należy pamiętać, że każda z wartości w kolumnach „conf” i „position” została zastąpiona określonymi wartościami.
Należy również pamiętać, że wartości w kolumnie „punkty” pozostały niezmienione.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania za pomocą dplyr:
Jak przekodować wartości za pomocą dplyr
Jak zamienić NA na Zero w dplyr
Jak filtrować wiersze zawierające określony ciąg za pomocą dplyr