运行scipy插值(interp1d)时的内存错误问题

2024-04-25 08:39:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试过用各种插值方法运行scipy1d插值(interp1d)。数据是一个包含525600个数字的数组。当我用“linear”、“nearest”或“zero”等更简单的方法运行它时,它运行得很好,但是当我使用“cubic”或“quadratic”时,结果是“memory error as below:

Traceback (most recent call last):
File "inter_comp.py", line 37, in <module>
interp = interp1d(indices[not_nan], B[not_nan], bounds_error=False,fill_value=0.,  kind = 'cubic')
File "/lustre/work/apps/anaconda/lib/python2.7/site-   packages/scipy/interpolate/interpolate.py", line 476, in __init__
self._spline = splmake(self.x, self._y, order=order)
File "/lustre/work/apps/anaconda/lib/python2.7/site-packages/scipy/interpolate/interpolate.py", line 2356, in splmake
B = _fitpack._bsplmat(order, xk)
MemoryError

我的代码如下:

^{pr2}$

我不确定是我使用的计算平台的问题,还是处理数据的方式或编码的问题。在

你能告诉我解决这个问题的办法吗?在

谢谢你, 艾萨克


Tags: 数据方法inpyselflinenotorder