R

时间:2017-10-31 01:12:16

标签: r loops

我有一个逻辑向量:

FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE

我想将此向量分为三组:第一组(第一组FALSE)第二组(2 TRUE)和最后一组(最后两个FALSE)。 如何进行循环分割矢量?

1 个答案:

答案 0 :(得分:0)

这是一个解决方案,假设您希望在数据框中的逻辑向量旁边定义一个组变量。

library(dplyr)

YourLogicalVector <- rep(c(FALSE, TRUE, FALSE), c(3, 2, 4))

data.frame(X = YourLogicalVector) %>%
  mutate(Boundary = X != lag(X, default = FALSE),
         Group = cumsum(Boundary))