【发布时间】:2021-03-30 20:05:49
【问题描述】:
我的数据子集:
library(tidyverse)
df <- structure(list(Score = c(18, 18, 20, 20, 19, 19, 19, 19, 19,
19, 19, 19, 19, 17, 17, 17, 17, 17, 19, 19)), row.names = c(NA,
-20L), class = c("tbl_df", "tbl", "data.frame"))
我想创建一个列来跟踪分数从 = 19 或反之亦然。
我目前正在尝试这个:
df %>%
mutate(temp = as.numeric(Score < 19))
Score temp
18 1
18 1
20 0
20 0
19 0
19 0
19 0
19 0
19 0
19 0
19 0
19 0
19 0
17 1
17 1
17 1
17 1
17 1
19 0
19 0
但是,我想要看起来像这样的东西:
Score temp
18 1
18 1
20 2
20 2
19 2
19 2
19 2
19 2
19 2
19 2
19 2
19 2
19 2
17 3
17 3
17 3
17 3
17 3
19 4
19 4
非常感谢任何帮助。
编辑:最终使用this post。
【问题讨论】:
-
正如@Henrik 所说:
data.table::rleid(df$Score >= 19)
标签: r