Я довольно новичок в R, к сожалению, мне не удалось найти помощь по другим связанным с этим вопросам.
У меня есть этот фрейм данных с именем selection, включая столбец 'RUN' и столбец 'TRNO' ,
Изначально в нем было 9 столбцов. Я добавил столбец «RUN», который содержит число, которое увеличивается на 1 всякий раз, когда значение в столбце «DAP» равно 0, используя этот код:
# Insert column RUN in "selection" dataframe
library(dplyr)
selection$RUN <- cumsum(selection$DAP == 0)
Это сработало отлично. Теперь я хотел бы сделать аналогичную операцию для столбца «TRNO». Он также должен содержать счетчик, который на этот раз увеличивается только тогда, когда столбец «RUN» достигает кратных 80 (т. Е. От RUN == 1-80 -> count = 1; RUN == 81-160 -> count = 2, ...)
Я пробовал несколько кодов, в том числе этот:
# Insert column TRNO in "selection" dataframe
i = 0
repeat{
i = i+80
selection$TRNO <- cumsum(selection$RUN == i)
break
}
Вместо увеличения числа при каждом кратном 80, он возвращает "0", когда значения RUN находятся в диапазоне от 1 до 80, увеличивается до 92, когда значения RUN равны 80, а затем застаивается на уровне 92 для всех более высоких значений RUN.