Unn*_*nni 8 python dataframe pandas
我想以滑动窗口的方式用pandas dataframe列中的值创建一个系列.例如,如果这是我的数据帧
state
0 1
1 1
2 1
3 1
4 0
5 0
6 0
7 1
8 4
9 1
Run Code Online (Sandbox Code Playgroud)
对于一个3的窗口大小,我想得到一个列表为[111,111,110,100,000 ......]
我正在寻找一种有效的方法(当然,我可以将状态转换为列表,然后滑动列表索引).有没有办法在这里使用熊猫滚动计算?我可以以某种方式在滚动窗口中打印元素吗?
piR*_*red 10
a = np.array([100, 10, 1])
s.rolling(3).apply(a.dot).apply('{:03.0f}'.format)
0 nan
1 nan
2 111
3 111
4 110
5 100
6 000
7 001
8 014
9 141
Name: state, dtype: object
Run Code Online (Sandbox Code Playgroud)
thx @Alex提醒我使用 dot