为什么我的numpy数组随机转换为int类型?

时间:2019-03-02 15:59:44

标签: python numpy

我有一些用于分析模型输出的python代码,但是初始化的float64 numpy数组不断转换为int类型,我也不知道为什么。特别是,这种类型转换发生在与转换后的数组完全无关的行上。例如:

delta = np.zeros(dbdy.shape, dtype=np.float64)
b_vec = np.zeros((2,1)).flatten(); h_vec = np.zeros((2,1)).flatten()

# delta = |b|/|h|
for j in range(0, h_stack.shape[0]): ...

根据调试器, delta 确实被初始化为float64类型的数组,但是一旦执行了第2行并且调试器进入循环, delta 就会转换为一个int类型的数组。

最奇怪的是,尽管Spyder声称该数组是int类型的,但它仍然包含浮点值。但这使所有事情搞砸了,因为imshow拒绝显示这些数组,并且仅通过.astype转换回不起作用。

正在发生什么?!

0 个答案:

没有答案