Может кто-нибудь объяснить, почему только некоторые из чисел преобразуются в строки высокой и низкой?номера перекодировки в строки не заменяют все значения
set.seed(1)
df <- data.frame(npitotal=ceiling(runif(30,0,40)))
df$npitotal[df$npitotal >= 22] <- "high"
df$npitotal[df$npitotal < 22] <- "low"
df$npitotal
# [1] "low" "low" "high" "high" "9" "high" "high" "high"
# [9] "high" "3" "9" "8" "high" "low" "high" "low"
#[17] "high" "high" "low" "high" "high" "9" "high" "6"
#[25] "low" "low" "low" "low" "high" "low"
После того, как вы сделаете свое первое преобразование, он станет символьным вектором, поэтому второй меньше, чем не оценивается численно, а как символ. – Jay
В качестве альтернативы взгляните на '? FindInterval' и'? Cut' – thelatemail
@thelatemail, 'cut' не похоже, что он позволит вам указать точку останова. – Rilcon42