2017-12-22 29 views
2

私はパンダで時系列解析をやっており、削除したい異常値のパターンがあります。怒鳴るプロットは、データあなたが散在同様の値のこれらの点を確認しているラインのような可能性の高い機器の癖を見て、必要がありますすることができASパンダの隣接点からあまりにも離れた点を削除する

enter image description here

日として最初の列、2番目の列を持つデータフレームに基づいています除去される。 Iveはrolling_mean、median、および標準偏差に基づく除去を無駄に使用して試しました。密度のアイデアのために、1984年から現在までの毎日の測定値。何か案は?あなたは、各データ点は、Dは、少なくとも「N」、「近く」とは、ある距離内のデータ・ポイント」を有することを要求することができる

auge = pd.read_csv('GaugeData.csv', parse_dates=[0], header=None) 
gauge.columns = ['Date', 'Gauge'] 
gauge = gauge.set_index(['Date']) 
gauge['1990':'1995'].plot(style='*') 

圧延メジアン

gauge = pd.rolling_mean(gauge, 5, center=True)#gauge.diff() 
gauge['1990':'1995'].plot(style='*') 

After rolling median

+0

あなたはそのプロットに到着するようにコードを作成しましたか? – Dark

+0

@Darkがちょうど追加されました。そのlitteralyはCSVに読み込んで、それの合理的なサブセットをプロットしています。パターンは、 – jdaily

答えて

0

を適用した結果"

  • Nは2以上であってもよい。
  • は、ゲージ[i]のようなペアになります。ゲージ[i-1]とゲージ[i + 1]のようなペアでも構いませんが、 Gauge [i-2]、gauge [i + 1]、gauge [i + 2]のうち少なくとも2つが以下を満たすとします:距離(ゲージ[i]、ゲージ[ix])< D
  • D - 実際のデータポイントがどのくらい近くにあるかを判断することができます。

これは完璧ではありませんが、ノイズの大半はデータセットから取り除かれます。

関連する問題