You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言中基于含P标记的字符向量生成迭代编号列的实现方法

实现方法

你可以通过累计P的出现次数结合向上取整的逻辑快速实现需求,不需要额外依赖包的基础R写法如下:

# 已知参数
number <- 2
iterations <- 2
df <- data.frame(var = c("P", "a", "b", "P", "d", "a", "k",
                         "P", "e", "q", "s", "P", "d", "v", "i", "j"))

# 新增iter列逻辑:统计到当前行的P累计出现次数,每满number个迭代号+1
df$iter <- ceiling(cumsum(df$var == "P") / number)

如果习惯使用tidyverse语法,写法如下:

library(dplyr)
df <- df %>%
  mutate(iter = ceiling(cumsum(var == "P") / number))

运行后输出的df即可完全匹配你给出的预期结果。


内容的提问来源于stack exchange,提问作者Electrino

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 09:24:03