Как я могу создать новый столбец с двумя новыми категориями? - PullRequest
0 голосов
/ 03 октября 2019

Я пытаюсь создать новый столбец с именем AgeClass с двумя новыми категориями ("Ювенильный" и "Взрослый") на основе HatchMass в сформированном Tibble I. Категория «для взрослых» - это практически любое значение NA в этом столбце. Я пробовал следующий код:

    PBTdata %>% PBTdata
mutate(AgeClass = ifelse(HatchMass != is.na(HatchMass), "Juvenile", "Adult"))

Я продолжаю получать вывод, который имеет столбец AgeClass, но он выводит только категорию "Juvenile" и оставляет "Adult" как NA. Как я могу изменить значения NA, чтобы они были отнесены к категории «Взрослый»?

Ответы [ 2 ]

0 голосов
/ 03 октября 2019

Использование case_when

library(dplyr)
PBTdata %>%
         mutate(AgeClass = case_when(is.na(HatchMass) ~ "Adult", 
                       TRUE ~ "Juvenile"))
0 голосов
/ 03 октября 2019

Мы можем использовать is.na в ifelse напрямую. Попробуйте

library(dplyr)
PBTdata %>%  mutate(AgeClass = ifelse(is.na(HatchMass), "Adult", "Juvenile"))

или в базе R без ifelse

PBTdata$AgeClass <- c("Juvenile", "Adult")[is.na(PBTdata$HatchMass) + 1]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...