【发布时间】:2021-11-02 22:55:49
【问题描述】:
我正在寻找 R 中与 python 中this post 的等效代码,用于添加一个列,该列累积计算前一列中正值和负值的数量。
我发现了许多累积和或更复杂的示例,但我只想计算一排中正数和负数的数量,只要符号发生变化就会重置。请参阅示例代码。
library(dplyr)
df <- data.frame(x = c(0.5, 1, 6.5, -2, 3, -0.2, -1))
我的预期输出是这样的:
df <- data.frame(x = c(0.5, 1, 6.5, -2, 3, -0.2, -1),
z = c(1,2,3,-1,1,-1,-2))
当数据帧 df 仅以“x”开头时,我希望 R 使用 mutate 函数创建列“z”。
【问题讨论】:
-
相关:Create counter within consecutive runs of values;例如
sn = sign(x); rowid(rleid(sn)) * sn
标签: r