Для параметра процесса существуют верхний и нижний пределы. Когда данные собираются и сохраняются в векторе, я пытаюсь использовать функцию cut
для перекодирования вектора.
Вот как я это сделал (как пример):
x = mtcars$mpg
cut(x, breaks = c(-Inf,20, 30, Inf), labels = c("low","good","high"))
Это прекрасно работает.
Но когда я попытался обозначить слишком высокие и слишком низкие значения просто как «сбой», появляется сообщение об ошибке:
x = mtcars$mpg
cut(x, breaks = c(-Inf,20, 30, Inf), labels = c("failure","pass","failure"))
Error in `levels<-`(`*tmp*`, value = if (nl == nL) as.character(labels) else paste0(labels, : factor level [3] is duplicated
Очевидно, что функция cut
не предполагает, что мы будем предоставлять повторяющиеся метки.
Есть ли обходной путь для этого?