I agree, but get error
suppressPackageStartupMessages({
library(dplyr)
})
xx <- data.frame(
COMPANY_NUMBER = c(1000403L,1000403L,1000403L,
1000403L,10029943L,10029943L,10029943L,10037980L,
10037980L,10037980L,10037980L,10057418L,10057418L,10057418L,
1009550L,1009550L,1009550L,1009550L),
NUMBER_OF_YEARS = c(4L,4L,4L,4L,3L,3L,3L,4L,
4L,4L,4L,3L,3L,3L,4L,4L,4L,4L)
)
xx %>%
group_by(COMPANY_NUMBER, NUMBER_OF_YEARS) %>%
mutate (I = row_number(),
J = row_number(),
I = if_else(I < max(I), 1, I)) %>%
ungroup()
#> Error: Problem with `mutate()` input `I`.
#> x `false` must be a double vector, not an integer vector.
#> ℹ Input `I` is `if_else(I < max(I), 1, I)`.
#> ℹ The error occurred in group 1: COMPANY_NUMBER = 1000403, NUMBER_OF_YEARS = 4.