Gruppierung von R-Datenrahmen nach verbundenen Werten

Ich habe in R keine Lösung für dieses häufige Gruppierungsproblem gefunden:

Dies ist mein ursprünglicher Datensatz

ID  State
1   A
2   A
3   B
4   B
5   B
6   A
7   A
8   A
9   C
10  C

Dies sollte mein gruppierter resultierender Datensatz sein

State   min(ID) max(ID)
A       1       2
B       3       5
A       6       8
C       9       10

So besteht die Idee darin, den Datensatz zuerst nach der ID-Spalte (oder einer Zeitstempelspalte) zu sortieren. Dann sollten alle verbundenen Zustände ohne Lücken zusammen gruppiert und der minimale und maximale ID-Wert zurückgegeben werden. Es ist mit der rle-Methode verwandt, erlaubt jedoch nicht die Berechnung von Min- und Max-Werten für die Gruppen.

Irgendwelche Ideen

Antworten auf die Frage(8)

Ihre Antwort auf die Frage