Hi @TheWusterWu,
Would this work for you?
suppressPackageStartupMessages(library(tidyverse))
#create example data
set.seed(1221)
df <- tibble(Variable1 = sample(c(0,1), 20, replace = TRUE), Variable2 = sample(1:40, 20, replace = TRUE))
#add column that shows 0 if this condition is met:
# condition Variable1 == 1 AND current_value(Variable2) > previous_value(Variable2)
df %>% mutate(Variable3 = case_when(
Variable1 == 1 & lag(Variable2, default = 0) < Variable2 ~ 0,
TRUE ~ as.double(Variable2)
))