R:创建不等间距的序列

R:创建不等间距的序列,r,indexing,sequence,spacing,R,Indexing,Sequence,Spacing,我有一个向量,其中相同的单词“amount”以不同的间隔出现: “金额”“选择”“评级”“金额”“选择”“金额”“选择”“选择”“评级”“选择”“金额”“选择”“评级” 因此,在上述示例中,“金额”出现在位置1、4、6和11 我想创建一个序列,每次遇到这个单词时,该序列将递增1,这样我就可以得到如下序列: 1112343444 你知道我该怎么做吗 提前感谢。您可以在逻辑向量(v1=='amount'上尝试cumsum) 数据 v1您可以在逻辑向量上尝试cumsum(v1=='amount') 数

我有一个向量,其中相同的单词“amount”以不同的间隔出现:

“金额”“选择”“评级”“金额”“选择”“金额”“选择”“选择”“评级”“选择”“金额”“选择”“评级”

因此,在上述示例中,“金额”出现在位置1、4、6和11

我想创建一个序列,每次遇到这个单词时,该序列将递增1,这样我就可以得到如下序列: 1112343444

你知道我该怎么做吗


提前感谢。

您可以在逻辑向量(
v1=='amount'
上尝试
cumsum

数据
v1您可以在逻辑向量上尝试
cumsum
v1=='amount'

数据
v1您还可以使用
ifelse
作为测试,并对该测试结果使用
cumsum

library("magrittr")                                           # for %>% 

v1 <- 
c("amount", "selection", "rating", "amount", "selection",
  "amount", "selection", "selection", "rating", "selection", 
  "amount","selection", "rating")

ifelse(v1 %in% "amount", 1, 0) %>% cumsum
library(“magrittr”)#用于%>%
v1%积温

您还可以使用
ifelse
作为测试,并对该测试的结果使用
cumsum

library("magrittr")                                           # for %>% 

v1 <- 
c("amount", "selection", "rating", "amount", "selection",
  "amount", "selection", "selection", "rating", "selection", 
  "amount","selection", "rating")

ifelse(v1 %in% "amount", 1, 0) %>% cumsum
library(“magrittr”)#用于%>%
v1%积温

我认为这也有效
(v1=='amount')%%>%cumsum
我认为这也有效
(v1=='amount')%%>%cumsum
library("magrittr")                                           # for %>% 

v1 <- 
c("amount", "selection", "rating", "amount", "selection",
  "amount", "selection", "selection", "rating", "selection", 
  "amount","selection", "rating")

ifelse(v1 %in% "amount", 1, 0) %>% cumsum