Подсчитать количество предыдущих предметов по группам в R [дубликаты]
На этот вопрос уже есть ответ здесь:
Добавление столбца счетчика для набора похожих строк в R [duplicate] 1 ответЯ хотел бы создать новую переменную, которая подсчитывает количество предыдущих элементов в группе. Вот что я имею в виду, принимаяesoph
набор данных в качестве примера.
сначала я сортирую набор данных по моей группеesoph$agegp, esoph$alcgp
и столбец дополнительного значения-esoph$ncontrols
.
Это дает мне следующий набор данных
x<-esoph[order(esoph$agegp, esoph$alcgp, -esoph$ncontrols ), ]
x
agegp alcgp tobgp ncases ncontrols
1 25-34 0-39g/day 0-9g/day 0 40
2 25-34 0-39g/day 10-19 0 10
3 25-34 0-39g/day 20-29 0 6
4 25-34 0-39g/day 30+ 0 5
5 25-34 40-79 0-9g/day 0 27
6 25-34 40-79 10-19 0 7
8 25-34 40-79 30+ 0 7
7 25-34 40-79 20-29 0 4
9 25-34 80-119 0-9g/day 0 2
11 25-34 80-119 30+ 0 2
...
Теперь я хотел бы создать новую переменную с некоторым индексом, увеличивающимся на единицу в каждой строке. Всякий раз, когда начинается следующая группа, индекс возвращается к 1.
Результирующая таблица будет следующей (с дополнительным столбцом индекса):
agegp alcgp tobgp ncases ncontrols index
1 25-34 0-39g/day 0-9g/day 0 40 1
2 25-34 0-39g/day 10-19 0 10 2
3 25-34 0-39g/day 20-29 0 6 3
4 25-34 0-39g/day 30+ 0 5 4
5 25-34 40-79 0-9g/day 0 27 1
6 25-34 40-79 10-19 0 7 2
8 25-34 40-79 30+ 0 7 3
7 25-34 40-79 20-29 0 4 4
9 25-34 80-119 0-9g/day 0 2 1
11 25-34 80-119 30+ 0 2 2
...
Как рассчитать этот столбец?
Спасибо!