Aufeinanderfolgende Segmente in einem Pandadatenrahmen finden

Ich habe einen pandas.DataFrame mit Messungen zu aufeinander folgenden Zeitpunkten. Zusammen mit jeder Messung hatte das beobachtete System zu jedem Zeitpunkt einen unterschiedlichen Zustand. Daher enthält der DataFrame bei jeder Messung auch eine Spalte mit dem Status des Systems. Zustandsänderungen sind viel langsamer als das Messintervall. Infolgedessen könnte die Spalte mit den Zuständen wie folgt aussehen (index: state):

1:  3
2:  3
3:  3
4:  3
5:  4
6:  4
7:  4
8:  4
9:  1
10: 1
11: 1
12: 1
13: 1

Gibt es eine einfache Möglichkeit, die Indizes der einzelnen Segmente aufeinanderfolgend gleicher Zustände abzurufen? Das heißt, ich möchte so etwas bekommen:

[[1,2,3,4], [5,6,7,8], [9,10,11,12,13]]

Das Ergebnis könnte sich auch in etwas anderem als einfachen Listen befinden.

Die einzige Lösung, die mir bisher in den Sinn gekommen ist, besteht darin, die Zeilen manuell zu durchlaufen, Segmentänderungspunkte zu finden und die Indizes aus diesen Änderungspunkten zu rekonstruieren. Ich hoffe jedoch, dass es eine einfachere Lösung gibt.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage