- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将二维 numpy 数组的所有行值和列值与显式 for 循环 相乘:
product_0 = 1
product_1 = 1
for x in arr:
product_0 *= x[0]
product_1 *= x[1]
我知道乘积会爆炸成一个非常大的数字,但根据我以前的经验,python 在处理非常非常大的数字时没有内存问题。
所以据我所知,这是 numpy 的一个问题,除了我没有将巨大的产品存储在 numpy 数组或任何 numpy 数据类型中,因为它只是一个普通的 python 变量。
知道如何解决这个问题吗?
使用非就地乘法没有帮助 product_0 = x[0]*product_0
最佳答案
Python int
以任意精度 表示,因此它们不能溢出。但是 numpy
在底层使用 C++,因此最高的长符号整数具有固定精度,2^63 - 1
。你的数字远远超过这个值,平均有 ((716-1)/2)^86507)
。
当您在 for
循环中提取 x[0]
时,这仍然是一个 numpy
对象。要使用 python 整数的全部功能,您需要将其明确指定为 python int
,如下所示:
product_0 = 1
product_1 = 1
for x in arr:
t = int(x[0])
product_0 = product_0 * t
并且它不会溢出。
根据您的评论,这使您的问题更加具体,您最初的问题是为每一行/列计算数组的几何平均值。这里的解决方案:
我首先生成一个与您的数组具有相同属性的数组:
arr = np.resize(np.random.randint(1,716,86507*2 ),(86507,2))
然后,计算每列/行的几何平均值:
from scipy import stats
gm_0 = stats.mstats.gmean(arr, axis = 0)
gm_1 = stats.mstats.gmean(arr, axis = 1)
gm_0
将是一个数组,其中包含 x
和 y
坐标的几何平均值。 gm_1
而是包含行的几何平均值。
希望这能解决您的问题!
关于python - 为什么我不断收到此错误 'RuntimeWarning: overflow encountered in int_scalars',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53239890/
如果这不是一个错误,那就是另一个错误。如果不是那样的话,那就是别的东西了。我觉得我的项目已经改变了很多,现在只是试图解决代码签名问题,结果一切都搞砸了。我严格按照说明进行操作,但出现错误,例如当前的“
我不确定是否有一些我不知道的内置变量或规则,或者 make 是否有问题,或者我只是疯了。 对于我的一个项目,我有一个如下的 makefile: CC=g++ CFLAGS=-O3 `libpng-co
我有大约 10 个 div,它们必须不断翻转,每个 div 延迟 3 秒 这个 codrops 链接的最后一个效果是我正在寻找的,但无需单击 div http://tympanus.net/Devel
我如何使用 jQuery 持续运行 PHP 脚本并每秒获取响应,以及将鼠标上的少量数据发送到同一脚本? 我真的必须添加一些随机扩展才能让这么简单的计时器工作吗? 最佳答案 To iterate is
JBoss 4.x EJB 3.0 我见过如下代码(大大简化): @Stateless @TransactionAttribute(TransactionAttributeType.NOT_SUPPO
使用 PHPStorm,我试图忽略每次尝试进行 git 提交时 pop 的 workspace.xml。 我的 .gitignore 看起来像: /.idea/ .idea/workspace.xml
我是一名优秀的程序员,十分优秀!