Для серии как:
import numpy as np
import pandas as pd
N = 18
color = np.repeat(list("ABCABC"), 3)
ss = pd.Series(color, index=pd.date_range("2020-01-01", periods=N,
freq="10s", tz="UTC"),
dtype="category")
>>> print(ss)
2020-01-01 00:00:00+00:00 A
2020-01-01 00:00:10+00:00 A
2020-01-01 00:00:20+00:00 A
2020-01-01 00:00:30+00:00 B
2020-01-01 00:00:40+00:00 B
2020-01-01 00:00:50+00:00 B
2020-01-01 00:01:00+00:00 C
2020-01-01 00:01:10+00:00 C
2020-01-01 00:01:20+00:00 C
2020-01-01 00:01:30+00:00 A
2020-01-01 00:01:40+00:00 A
2020-01-01 00:01:50+00:00 A
2020-01-01 00:02:00+00:00 B
2020-01-01 00:02:10+00:00 B
2020-01-01 00:02:20+00:00 B
2020-01-01 00:02:30+00:00 C
2020-01-01 00:02:40+00:00 C
2020-01-01 00:02:50+00:00 C
Freq: 10S, dtype: category
Categories (3, object): [A, B, C]
Как я могу сгруппировать ее так, чтобы каждый блок следующего уровня категории был отдельной группой? В примере это означает, что в итоге останется 6 групп.