Dada uma matriz NumPy de int32
, como eu a converto float32
no local ? Então, basicamente, eu gostaria de fazer
a = a.astype(numpy.float32)
sem copiar a matriz. É grande.
A razão para fazer isso é que eu tenho dois algoritmos para o cálculo de a
. Um deles retorna uma matriz de int32
, o outro retorna uma matriz de float32
(e isso é inerente aos dois algoritmos diferentes). Todos os cálculos adicionais assumem que a
é uma matriz de float32
.
Atualmente eu faço a conversão em uma função C chamada via ctypes
. Existe uma maneira de fazer isso em Python?
ctypes
é tanto "em Python" quanto usarnumpy
. :)