我有以下代码,我正在计算数据点的百分比增长,然后我计算百分比增长的变化,我正在寻找的是能够添加一列,在其中计算百分比的读数数量增长变化为负
df <- data.frame(id = c(1,2,3,4,5,6,7,8,9,10,11,12), data = c(19, 19, 27, 27, 38, 42, 47, 48, 49, 50, 51, 53))
df <- mutate(df, pct_growth = (data - lag(data))/lag(data))
df <- mutate(df, pct_growth_change = pct_growth - lag(pct_growth))
df$pct_growth_streak <- 0
df <- dplyr::mutate(df, pct_growth_streak = ifelse(pct_growth_change <=0, lag(pct_growth_streak)+1,0) )
Run Code Online (Sandbox Code Playgroud)
我得到的输出如下
id data pct_growth pct_growth_change pct_growth_streak
1 1 19 NA NA NA
2 2 19 0.00000000 NA NA
3 3 27 0.42105263 0.4210526316 0
4 4 27 0.00000000 -0.4210526316 1
5 5 …
Run Code Online (Sandbox Code Playgroud)