我正在研究一個使用NumPy
和SciPy
的Python項目。我有以下幾點:插值大數據Python
x = numpy.arange(-5,5,0.01)
y = numpy.arange(-5,5,0.01)
我也有x
功能和y
這樣
# fxy = function of x and y in a grid
# fxy.shape = (y.shape[0], x.shape[0])
我想插fxy
這樣,我都不得不x
並且是0.0001
函數值y
點或0.001
分開,即我要評估功能fxy
在
finer_x = numpy.arange(-5,5,0.0001)
finer_y = numpy.arange(-5,5,0.0001)
# finer_fxy = function of finer_x and finer_y in a grid
# finer_fxy.shape = (finer_y.shape[0], finer_x.shape[0])
我一直在試圖使用bisplrep
和interp2d
功能scipy.interpolate
但我分別使用了這些功能得到
File "/usr/lib/python2.7/dist-packages/scipy/interpolate/fitpack.py", line 873, in bisplrep
tx,ty,nxest,nyest,wrk,lwrk1,lwrk2)
MemoryError
和
OverflowError: Too many data points to interpolate
。創建插值數據的最佳方法是什麼?
是班級工作嗎?如果是,則添加作業標籤 – Curious
如果'finer_fxy'存儲在可能默認的'float64'中,則需要大約64 GiB的內存;毫不奇怪,你正在耗盡。如果你願意插入.001,而不是一個演出,這是更合理。 – Dougal
不是功課/作業。實際上,對我而言,0.001是可以接受的。 – eqb