¿Cómo puedo encontrar las primeras y últimas apariciones de un elemento en un data.frame?

He buscado exhaustivamente una traducción directa de R para el PRIMER. y última. punteros en los pasos de datos de SAS, pero parece que no pueden encontrar uno. Para aquellos que no están familiarizados con SAS, PRIMERO. es un valor booleano que identifica la primera aparición de un elemento dado en una tabla y ÚLTIMO. Es un booleano que identifica la última aparición. Por ejemplo, considere la siguiente tabla ordenada:

V1    V2    V3
1     1     1
1     1     2
1     2     3
1     2     4
2     3     5
2     3     6
2     4     7
2     4     8
3     5     9
3     5     10
3     6     11
3     6     12

Debido a que los pasos de DATOS SAS leen las tablas línea por línea, puedo usar una declaración como:

IF FIRST.V1 THEN DO ...

FIRST.V1 devolverá TRUE si y solo si esta es la primera vez que se ha encontrado la observación en V1. En otras palabras, devolverá verdadero para V1 [1] (la primera aparición de '1'), V1 [5] (la primera aparición de '2') y V1 [9] (la primera aparición de '3' ). El último. El puntero funciona de manera análoga, pero con la apariencia final de ese elemento.

Hay algo enR que emula esto?

Respuestas a la pregunta(1)

Su respuesta a la pregunta