我有此数据,想对每第n个数字进行分类(示例2)。使用cut或cut_interval并不是“切割”它。任何建议都非常欢迎。谢谢!
haves <- data.frame(
some_vector = c(1,2,2,3,4,5,6,7,8)
)
haves$category <- cut_interval(df$some_vector, n=2)
haves
wants <- data.frame(
some_vector = c(1,2,2,3,4,5,6,7,8)
,category = c(1,1,1,2,2,3,3,4,4)
)
wants
这应该做(对于正数)
cut_interval <- function(x, n) ceiling(x / n)
cut_interval(haves$some_vector, n=2)
# [1] 1 1 1 2 2 3 3 4 4
无论如何,cut()
都应该能够将其剪切(通过@Henrik的改进,使之概括):
cut(haves$some_vector, c(-Inf, seq(2, max(haves$some_vector), by = 2), Inf), labels = FALSE)
# [1] 1 1 1 2 2 3 3 4 4
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句