所以在定点迭代中,我改变了矩阵的初始化方式
def init(M,N):
return 2.5*np.ones([M,N])
到
def init(M,N):
return nprnd.randint(1,6,[M,N])
,其中
import numpy as np
import numpy.random as nprnd
这立即引起了
很重要,我只是A - = step_size * G
TypeError:无法使用强制转换规则' same_kind'
将ufunc从dtype(' float64')的输出减去dtype(' int32')
nprnd.randint(1,6,[M,N], dtype='float')
除
TypeError:不支持的dtype" float64"对于randint
我如何规避这个?我有点不想生成一个矩阵,然后复制它只是为了将其转换为浮动。有更智能的方式吗?
答案 0 :(得分:5)
您可以使用astype
进行显式演员:
nprnd.randint(1,6,[M,N]).astype("float")