如何根据R中的一个字符串向量得到一个数字递增的向量?[duplicate]

pw136qt2  于 2023-01-10  发布在  其他
关注(0)|答案(1)|浏览(145)
    • 此问题在此处已有答案**:

Create unique ID based on repeated IDs(2个答案)
Assigning unique identifier to consecutive sequences of binomial values in R [duplicate](1个答案)
13小时前关门了。
我有一个字符串向量(strings_input),我希望它是一个数字向量,就像expected_output一样。

strings_input <- c("a", "a", "b", "b", "b", "c", "c", "a", "b", "b")

some function:

expected_output <- c(1, 1, 2, 2, 2, 3, 3, 4, 5, 5)
s8vozzvw

s8vozzvw1#

使用data.table::rleid

data.table::rleid(strings_input)
# [1] 1 1 2 2 2 3 3 4 5 5

或以R为基:

with(rle(strings_input), rep(seq(lengths), lengths))
# [1] 1 1 2 2 2 3 3 4 5 5

还有一个dplyr开发函数consecutive_id

dplyr::consecutive_id(strings_input)
# [1] 1 1 2 2 2 3 3 4 5 5

相关问题