在下面代码的最后一行中,我得到一个“TypeError:数组无法安全地转换为所需类型”。你能帮忙吗?
让我解释一下代码。 randin()
函数可帮助我获取包含lb
和ub
指定范围内元素的数组。换句话说,您为randin()
函数提供了两个一维numpy数组lb
和ub
,并返回数组r
,其中此不等式适用于所有元素{{1} }:i
在一维数组lb[i] <= r[i] < ub[i]
中,某些元素可能超出pos
和lb
指定的范围。我只希望随机复制这些元素。如果可能的话,我想使用我现有的函数ub
。当然我想使用花哨的布尔索引,而不是循环。
THX。
randin()
答案 0 :(得分:0)
当我初始化pos
之类的pos = np.array([1, -3, 5, -7, 9, -11], dtype = float)
时,代码运行没有问题。所以numpy害怕将浮点数赋给整数元素。这不是一个坏主意。