library(tidyverse)
df <- structure(list(PN = c("41681", "16588", "34881",
"36917", "33116", "68447"), `2017-10` = c(0L,
0L, 0L, 0L, 0L, 0L), `2017-11` = c(0L, 1L, 0L, 0L, 0L, 0L), `2017-12` = c(0L,
0L, 0L, 0L, 1L, 0L), `2018-01` = c(0L, 0L, 1L, 1L, 0L, 0L), `2018-02` = c(1L,
0L, 0L, 0L, 0L, 0L), `2018-03` = c(0L, 0L, 0L, 0L, 0L, 0L), `2018-04` = c(0L,
0L, 0L, 0L, 0L, 1L), Status = c("OK", "NOK", "OK", "NOK", "OK",
"OK")), .Names = c("PN", "2017-10", "2017-11", "2017-12",
"2018-01", "2018-02", "2018-03", "2018-04", "Status"), row.names = c(NA,
-6L), class = c("tbl_df", "tbl", "data.frame"))
Столбец Status
в приведенном выше фрейме данных df
был создан с использованием следующей функции применения:
mutate(
Status =
ifelse(
(apply(.[, 2:7], 1, sum) > 0) &
(.[, 8] > 0),
"NOK",
"OK"
)
)
Если I %>%
передает arrange(Status)
непосредственно после кодакусок выше я получаю следующую ошибку.
Ошибка вrange_impl (.data, точки): Аргумент 1 имеет матрицу неподдерживаемого типа
Если я запускаю весь свой код без arrange(Status)
, код выполняется нормальнои превращается в воспроизводимый блок, который я настроил в начале этого поста - через dput(df)
Столбец Status
имеет тип символа, но если я его перед факторизацией до запуска команды arrange(Status)
, ошибкапоказанное выше исчезает.
У меня никогда не было проблемы с глаголом arrange()
в классах символов.Почему я вынужден учитывать свой столбец Status, чтобы ошибка исчезла?Это как-то связано с моим использованием команды apply?Это единственное новое, что я сделал в своем «программировании» на этот раз.