Преобразовать числовые коэффициенты в столбце в строку факторов - PullRequest
1 голос
/ 16 марта 2019

У меня есть датафрейм: df

Person    Mood     Age
1         1        16//
2         2        32//
3         3        25//
4         4        22//
5         5        28//
6         1        37//
7         2        40//
8         3        26//
9         4        19//
10        5        37//

И у меня есть вектор:

Emotions <- c(Happy, Sad, Angry, Upset, Neutral)

Я хочу преобразовать значения в настроении столбца при их отображении в векторные эмоции

Person    Mood     Age
1         happy    16//
2         sad      32//
3         angry    25//
4         upset    22//
5         neutral  28//
6         happy    37//
7         sad      40//
8         angry    26//
9         upset    19//
10        neutral  37//

1 Ответ

0 голосов
/ 17 марта 2019

Есть способ использовать tidyverse.Это немного скучно, но работает, будет масштабироваться и легко понять:

library(tidyverse)
df %>% 
  select(Mood) %>% # Subset columns to just Mood
  distinct() %>%   # Get unique instances
  bind_cols(tibble(Emotions)) %>% # Convert your vector to a tbl and add as a new column
  merge(df, by = "Mood", all.y = TRUE) %>% # Merge the original df back in
  arrange(Person) %>% # Arrange by Person ID
  select(Person, Mood, Age) # Subset to the desired columns

Вывод:

   Person Mood  Age
1       1    1 16//
2       2    2 32//
3       3    3 25//
4       4    4 22//
5       5    5 28//
6       6    1 37//
7       7    2 40//
8       8    3 26//
9       9    4 19//
10     10    5 37//
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...