3

NumPyとを使用する Python プロジェクトに取り組んでいますSciPy。私は次のものを持っています:

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およびである、または離れyている点を持つように補間したい、つまり、 で関数を評価したい0.00010.001fxy

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])

bisplrepinterp2d関数を使用しようとし続けます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

それぞれそれらの機能を使用します。補間されたデータを作成する最良の方法は何ですか?

4

2 に答える 2

3

明らかに、あなたは NumPy プレートにあまりにも多くのポイントを置いています。それについて聞いて申し訳ありません。

私のアドバイスは、最初にデータをプロットし、比較的線形のゾーンを見つけてスキップすることです。つまり、配列を異なるゾーンに分解し、部分的な補間を実行してみてください。

于 2012-09-03T18:03:56.827 に答える
1

データは通常のグリッド上にあります: RectBivariateSpline を使用してみてください。

bisplrep/interp2d は散在データ用です。

于 2012-09-13T20:00:39.430 に答える