如何在同一列中查找连续出现的最高计数,例如相同的数字、递增值或递减值
因此,假设:
h_diff l_diff monotonic
timestamp
2000-01-18 NaN NaN NaN
2000-01-19 2.75 2.93 1.0
2000-01-20 12.75 10.13 1.0
2000-01-21 -7.25 -3.31 0.0
2000-01-24 -1.50 -5.07 0.0
2000-01-25 0.37 -2.75 1.0
2000-01-26 1.07 7.38 1.0
2000-01-27 -1.19 -2.75 0.0
2000-01-28 -2.13 -6.38 0.0
2000-01-31 -7.00 -6.12 0.0
h_diff中正值的最大单调性值为2,负值的最大单调性值为3。对于l_diff也是一样。因此,如果滚动为10或n,我如何在仍然能够动态更改窗口大小的情况下找到最大的单调计数
这给了我单调列的1.0值:lambda x:np.all(np.diff(x)>;0)和lambda x:np.count_nonzero(np.diff(x)>;0)将计算窗口的总计数1.0,但我试图找到的是给定窗口系列中最长的运行时间
我所希望的是:
h_diff l_diff monotonic
timestamp
2000-01-18 NaN NaN NaN
2000-01-19 2.75 2.93 1.0
2000-01-20 12.75 10.13 2.0
2000-01-21 -7.25 -3.31 0.0
2000-01-24 -1.50 -5.07 0.0
2000-01-25 0.37 -2.75 1.0
2000-01-26 1.07 7.38 2.0
2000-01-27 1.19 -2.75 3.0
2000-01-28 2.13 -6.38 4.0
2000-01-31 -7.00 -6.12 0.0
使用^{} +^{}
初始数据帧
细节
更新
下面的代码应该能够找到连续出现的正数或负数。下面的代码用于列
h_diff
相关问题 更多 >
编程相关推荐