不幸的是,我不知道任何可以处理所需整数约束的优化函数。
根据数据的大小,我建议使用暴力方法。下面的工作很好。
raw2 = pd.Series(np.random.randn(100))
zscore2 = zscore(raw2, 30)
err = pd.Series()
for widow in range(1, zscore2.shape[0]):
err.loc[widow] = (zscore2 - zscore(raw2, widow)).abs().sum()
err.idxmin()