我有一个pandas Dataframe ,用于记录给定一天中单个公交路线的停靠站和预定时间。我想将其拆分为多个帧,每个帧对应于给定公交车的单个行程(仅基于stop
周期,而不是scheduled
周期发生的时间)。
例如,下面有两个A->B->C
行程,所以看看如何分割帧(即:在这种情况下索引为3),使每个子帧具有相同的停止序列。
import pandas as pd
df = pd.DataFrame({
"scheduled": ["2023-05-25 13:00", "2023-05-25 13:15", "2023-05-25 13:45", "2023-05-25 14:35", "2023-05-25 14:50", "2023-05-25 15:20"],
"stop": ["A", "B", "C", "A", "B", "C"]
})
pd.to_datetime(df["scheduled"])
字符串
1条答案
按热度按时间5rgfhyps1#
假设你不知道你有多少个止损点,但是模式总是重复,你可以与第一个名字进行比较,每次找到这个止损点时递增,然后使用
groupby
进行分割:字符串
输出量:
型
中间体组号:
型
其他选项,计算唯一停靠点的数量(
nunique
),并使用此值与numpy.array_split
进行拆分:型