当我尝试运行 stats.boxcox(list)
时,出现了 RuntimeWarning: divide by zero encountered in log
错误。
这个列表中没有包含零值。我参考了其他的帖子,说可以使用 np.errstate()
忽略这个错误。
但是,在我的情况下,我认为这样做并不合适,因为由 stats.boxcox()
返回的值是无意义的(全部都是常数)。请看下文。
array([ 0.11472901, 0.11472901, 0.11472901, 0.11472901, 0.11472901,
0.11472901, 0.11472901, 0.11472901, 0.11472901, 0.11472901,
0.11472901, 0.11472901, 0.11472901, 0.11472901, 0.11472901,
0.11472901, 0.11472901, ... ... ]
错误的详细信息如下:
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scipy/stats/morestats.py:591: RuntimeWarning: divide by zero encountered in log
llf -= N / 2.0 * np.log(np.sum((y - y_mean)**2. / N, axis=0))
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/scipy/optimize/optimize.py:2063: RuntimeWarning: invalid value encountered in double_scalars
w = xb - ((xb - xc) * tmp2 - (xb - xa) * tmp1) / denomenter code here
scipy
版本是什么?如果只使用list
的前10个值,是否也会出现这种情况?如果是这样,请向我们展示这些值,以便我们尝试重现您的问题。 - cel