Python Scipy:更改插值的数据类型

Python Scipy:更改插值的数据类型,python,numpy,scipy,numpy-dtype,Python,Numpy,Scipy,Numpy Dtype,是否可以强制scipy插值到具有特定numpy数据类型的输出阵列 例如,从scipy.interpolate.Rbf输出float32数组?不,您总是得到float64类型。对于其他内容,请在接收输出后使用.astypenp.float32等转换输出 我以Rbf为例:它对输入数据所做的第一件事是将其转换为np.float_,float64的别名: 插值的节点是从中计算出来的,所以它们也是浮动的。Rbf对象的调用方法不会强制转换输入数据,但NumPy会在np.dot中强制转换输入数据,因为self

是否可以强制scipy插值到具有特定numpy数据类型的输出阵列


例如,从scipy.interpolate.Rbf输出float32数组?

不,您总是得到float64类型。对于其他内容,请在接收输出后使用.astypenp.float32等转换输出

我以Rbf为例:它对输入数据所做的第一件事是将其转换为np.float_,float64的别名:

插值的节点是从中计算出来的,所以它们也是浮动的。Rbf对象的调用方法不会强制转换输入数据,但NumPy会在np.dot中强制转换输入数据,因为self.nodes的数据类型:


你现在有什么数据类型?它是否取决于输入的数据类型?可能是Python代码调用使用很少的类型选项(例如double)编译例程。在回归后出演可能是最好的选择。这是一种不幸的行为。如果试图从精度可能较低的测量数据中插入大型光栅,则64位数据类型会导致内存限制提前几次达到。
self.xi = np.asarray([np.asarray(a, dtype=np.float_).flatten()
                           for a in args[:-1]])
return np.dot(self._function(r), self.nodes).reshape(shp)