¿Cómo asignar ID para filas consecutivas en R divididas por un tipo dado de fila? [duplicar
Esta pregunta ya tiene una respuesta aquí:
Creación de un vector específico sin bucle o recursión en R 2 respuestasSplit data.frame por valor 2 respuestas Tengo un marco de datos cuyas filas representan personas. Para una familia determinada, la primera fila tiene el valor1
en la columnaA
, y todas las filas siguientes contienen miembros de la misma familia hasta otra fila en la columnaA
tiene el valor1
. Entonces, comienza una nueva familia.
Me gustaría asignar ID a todas las familias en mi conjunto de datos. En otras palabras, me gustaría tomar:
A
1
2
3
1
3
3
1
4
Y conviértalo en:
A family_id
1 1
2 1
3 1
1 2
3 2
3 2
1 3
4 3
Estoy jugando con un marco de datos de 3 millones de filas, así que un simplefor
olución @ -loop Se me ocurrió que no alcanza la eficiencia necesaria. También elfamily_id
no necesita ser secuencial.
Tomaré una solución dplyr.