浅谈numpy溢出错误

今天在进行实验数据处理时使用到了numpy.power()函数,一直导致结果和结论对不上,中间处理过程比较多,很难发现是因为计算数值出错的原因,最后发现是numpy运算过程中数值太大导致的溢出错误问题,属实被坑了。

当值需要比数据类型中的可用内存更多的内存时,NumPy数值类型的固定大小可能会导致溢出错误。比如:

浅谈numpy溢出错误_第1张图片

原因就是四次方运算之后的值已经超出了numpy默认的整数类型32位,直接造成数值溢出。
当然上面例子很容易看出问题,如果下面这样可就很难发现了,一不小心就是个“

浅谈numpy溢出错误_第2张图片

如果使用浮点数,结果就没有问题了。numpy默认浮点类型是np.float64

浅谈numpy溢出错误_第3张图片

或者运算之前指定一下数据类型,用64位去存储这个数,不要用32位。

浅谈numpy溢出错误_第4张图片

 到此这篇关于浅谈numpy溢出错误的文章就介绍到这了,更多相关numpy溢出错误内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(浅谈numpy溢出错误)