Arrays 使用math.erf()将意外值分配给数据类型('int64')时,未更新Numpy数组
我只是尝试将math.erf的输出写入numpy数组。 我所做的就是:Arrays 使用math.erf()将意外值分配给数据类型('int64')时,未更新Numpy数组,arrays,math,numpy,int,Arrays,Math,Numpy,Int,我只是尝试将math.erf的输出写入numpy数组。 我所做的就是: import numpy as np import math a=np.array([0,0,0]) a[0]=math.erf(5) 但是,永远不会更新a来保存math.erf的输出值,它应该只是一个浮点。 我做错了什么 更新 当通过a=np.asarraya从列表中创建数组时,它似乎可以工作。它确实会得到更新,但不会更改数组的类型,因此该值似乎不会更改。注意 a=np.array([0,0,0]) a.dtype 返
import numpy as np
import math
a=np.array([0,0,0])
a[0]=math.erf(5)
但是,永远不会更新a来保存math.erf的输出值,它应该只是一个浮点。
我做错了什么
更新
当通过a=np.asarraya从列表中创建数组时,它似乎可以工作。它确实会得到更新,但不会更改数组的类型,因此该值似乎不会更改。注意
a=np.array([0,0,0])
a.dtype
返回
dtype('int64')
因为math.erf5考虑了Craig的答案,所以真正的问题不在于math.erf。更改问题标题以反映意外地将一个小浮点值赋给int并始终为零的问题,这将是一件好事。
a=np.array([0,0,0],dtype=float)
a[0]=math.erf(5)