我在程序中运行scipy.stats.stats.pearsonr()
时遇到以下警告
/usr/local/lib/python2.7/dist-packages/scipy/stats/stats.py:2471: RuntimeWarning: invalid value encountered in double_scalars
我想知道如何找出警告的原因,通过使用打印输出,或使用像pdb这样的调试器(我对pdb有所了解,但我不知道如何使用pdb来找出原因警告在这里。)
以下是我的程序使用pearsonr()
:
...
corr = pearsonr(t1, t2)
...
答案 0 :(得分:1)
根据docs,您可以更改默认警告行为以引发异常,这当然会使跟踪和调试变得更加容易。
import warnings
# Cause all warnings to raise exceptions:
warnings.simplefilter("error") # change the hook
# Trigger a warning:
corr = pearsonr(t1, t2) # this will now raise
答案 1 :(得分:0)