拆分总时间(以秒为单位)并在 1 秒帧内填充列值的行

Splitting the total time (in seconds) and fill the rows of a column value in 1 second frame

我的数据框看起来像(start_time 和 stop_time 以秒为单位,然后是毫秒)

我的预期输出是这样的,

我不知道该如何处理。前向填充可能会填充 NaN 值。但是我需要根据各自的标签将总时间秒数划分并保存为1秒帧。我没有任何代码片段可以继续。我所做的就是将它保存在一个数据框中作为.,

df = pd.DataFrame(数据,列=['Labels', 'start_time', 'stop_time'])

谢谢你,非常感谢你的帮助。

>>> df2 = pd.DataFrame({
>>>     "Labels" : df.apply(lambda x:[x.Labels]*(round(x.stop_time)-round(x.start_time)), axis=1).explode(), 
...     "start_time" : df.apply(lambda x:range(round(x.start_time), round(x.stop_time)), axis=1).explode()
...     })
>>> df2['stop_time'] = df2.start_time + 1
>>> df2

  Labels start_time stop_time
0      A          0         1
0      A          1         2
0      A          2         3
0      A          3         4
0      A          4         5
0      A          5         6
0      A          6         7
0      A          7         8
0      A          8         9
1      B          9        10
1      B         10        11
1      B         11        12
1      B         12        13
2      C         13        14
2      C         14        15