2

ベクトル内のすべてのエントリに対応するベクトル内のエントリがある場合、いくつかxのデータがあります。さらに、データは等間隔ではありません。yxyx

サンプル間を補間して、次元xの間隔を均等にし、対応する値を近似したいと思います。numpyでは、自然な解決策のように思えますが、私の問題には注意点があります。値は単調に増加していません (両方とも時間の関数であるため)。関数、および補間モジュールの他の関数は、方向が逆になるポイントで奇妙な結果をもたらします。xyinterp1dxxyinterp1dx

私が本当にやりたいことは、隣接する 2 つのxポイントのすべてのセットの間に直線を当てはめ、この非常に局所的な近似値に基づいて補間することです。numpyでこれを行う機能はありますか、それとも自分で何かを装備する必要がありますか?

4

1 に答える 1

0

xy ペアを並べ替えてから、interp1d を使用できますか? このようなもの?

import sort
xy = zip(x,y)
new_xy = sorted(xy, key=lambda xy: xy[0])
x = new_xy[:,0]
y = new_xy[:,1]

これで x は単調に増加し、関係は維持されました。

于 2012-11-27T05:50:24.210 に答える