这是我的数据:

                     o  h  l  c
time
2019.02.04 01:21:00  x  x  x  x
2019.02.04 01:22:00  x  x  x  x
2019.02.04 01:23:00  x  x  x  x
2019.02.04 01:24:00  x  x  x  x
2019.02.04 01:25:00  x  x  x  x
2019.02.04 01:26:00  x  x  x  x
2019.02.04 01:27:00  x  x  x  x
2019.02.04 01:28:00  x  x  x  x
2019.02.04 01:29:00  x  x  x  x
2019.02.04 01:30:00  x  x  x  x
2019.02.04 01:31:00  x  x  x  x
2019.02.04 01:32:00  x  x  x  x
2019.02.04 01:33:00  x  x  x  x
2019.02.04 01:34:00  x  x  x  x
2019.02.04 01:35:00  x  x  x  x
2019.02.04 01:36:00  x  x  x  x
2019.02.04 01:37:00  x  x  x  x
2019.02.04 01:38:00  x  x  x  x
2019.02.04 01:39:00  x  x  x  x
2019.02.04 01:40:00  x  x  x  x
2019.02.04 01:41:00  x  x  x  x
2019.02.04 01:42:00  x  x  x  x
2019.02.04 01:43:00  x  x  x  x
2019.02.04 01:44:00  x  x  x  x
2019.02.04 01:45:00  x  x  x  x


随着时间作为index,我尝试分离这些值。但是没有成功。

从头开始,我想每3行进行切片,而每片之间跳过2行。

我尝试了这个:

df_candle = df[5:400+2]


但这是来自5 to 402的简单系列。我认为这会帮助我跳到2。

我期望的结果是:

time,o,h,l,c
2019.02.04 01:21:00,x,x,x,x
2019.02.04 01:22:00,x,x,x,x
2019.02.04 01:23:00,x,x,x,x
2019.02.04 01:26:00,x,x,x,x
2019.02.04 01:27:00,x,x,x,x
2019.02.04 01:28:00,x,x,x,x
2019.02.04 01:31:00,x,x,x,x
2019.02.04 01:32:00,x,x,x,x
2019.02.04 01:33:00,x,x,x,x
2019.02.04 01:36:00,x,x,x,x
2019.02.04 01:37:00,x,x,x,x
2019.02.04 01:38:00,x,x,x,x
2019.02.04 01:41:00,x,x,x,x
2019.02.04 01:42:00,x,x,x,x
2019.02.04 01:43:00,x,x,x,x


请让我知道我能做什么。

最佳答案

IIUC,您正在寻找可变步长切片。我可以想到的一种选择是使用groupbycumcount来构建过滤器掩码:

df[df.groupby(pd.RangeIndex(len(df)) // 5).cumcount() < 3]

                     o  h  l  c
time
2019.02.04 01:21:00  x  x  x  x
2019.02.04 01:22:00  x  x  x  x
2019.02.04 01:23:00  x  x  x  x
2019.02.04 01:26:00  x  x  x  x
2019.02.04 01:27:00  x  x  x  x
2019.02.04 01:28:00  x  x  x  x
2019.02.04 01:31:00  x  x  x  x
2019.02.04 01:32:00  x  x  x  x
2019.02.04 01:33:00  x  x  x  x
2019.02.04 01:36:00  x  x  x  x
2019.02.04 01:37:00  x  x  x  x
2019.02.04 01:38:00  x  x  x  x
2019.02.04 01:41:00  x  x  x  x
2019.02.04 01:42:00  x  x  x  x
2019.02.04 01:43:00  x  x  x  x

10-04 21:56