Как уменьшить длину кода ifelse - PullRequest
1 голос
/ 17 января 2020

Я хотел бы рассчитать общее количество страниц на основе общего количества дней. Пример: от 0 до 25 дней, страница 1, от 26 до 50 дней, страница 2 и т. Д.! Я использую метод ниже.

df$totalpage <- ifelse(df$days >=0 & df$days<=25,1,
                      ifelse(df$days >=26 & df$days<=50,2,"Something wrong"))

Есть ли другой способ сделать то же самое, как если бы у меня было больше дней (> 365), я должен добавить много ifelse, что делает код длинным. любое предложение будет полезно.

Ответы [ 2 ]

1 голос
/ 17 января 2020

Мы можем использовать findInterval

findInterval(df$days, seq(0,365,25))

Или cut

cut(df$days, seq(0,365,25), labels = FALSE)
0 голосов
/ 17 января 2020

Вы можете использовать следующий код, который требует только ceiling() и деления /

df$totalpage <- ceiling(df$days/25))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...