lat
50.63757782
50.6375742
50.6375742
50.6374077762
50.63757782
50.6374077762
50.63757782
50.63757782
これらの緯度の値でグラフをプロットしたところ、グラフに突然のスパイク (外れ値) があることに気付きました。意味のある結果を表示できるように、すべての緯度の値を最後の 3 つの値の中央値に置き換えたい
出力は次のようになります。
lat lat_med
50.63757782 50.63757782
50.6375742 50.6375742
50.6375742 50.6375742
50.63740778 50.6375742
50.63757782 50.6375742
50.63740778 50.6375742
50.63757782 50.6375742
50.63757782 50.6375742
私はそのような緯度の値を何千も持っており、for ループを使用してこれを解決する必要があります。次のコードにはエラーがあることを知っています。私は Python の初心者なので、これを解決するためにあなたの助けに感謝します。
for i in range(0,len(df['lat'])):
df['lat_med'][i]=numpy.median(numpy.array(df['lat'][i],df['lat'][i-2]))
3 点の中央値の計算が目的を果たせず、5 つの値を考慮する必要があることに気付きました。中央値関数を必要な数だけ変更する方法はありますか。ご協力ありがとうございました
def median(a, b, c):
if a > b and a > c:
return b if b > c else c
if a < b and a < c:
return b if b < c else c
return a