我有多个以时间(ms)为索引的序列
如何通过递增索引来重复序列。
例如
我有这个

time_ms     ser1

10          1
20          0
30          0
40          1
50          0
60          0

想要这个
time_ms     ser1

10          1
20          0
30          0
40          1
50          0
60          0
70          1
80          0
90          0
100         1

.
.
.


1000        0
1010        1

最佳答案

一种方法是使用reindexrange数据帧,并用ser1填充np.resize列,这将复制df.ser1中的值以匹配指定的长度:

import numpy as np

n = 1010
step = 10

(df.set_index('time_ms')
   .reindex(range(10, n, step))
   .assign(ser1=np.resize(df.ser1.values, (n-1)//step)).astype(np.uint8))

ser1
         time_ms
10          1
20          0
30          0
40          1
50          0
60          0
70          1
80          0
90          0
100         1
110         0
120         0
130         1
140         0
150         0
...

08-05 07:47