きょうも亀だけど

機械学習やデータサイエンスの勉強記録など

一部の行を削除後のdataframeに対してscikit-learnのmean_squared_errorを実行すると「Input contains NaN, infinity or a value too large for dtype('float64').」が発生した時の対処法

dataframeに対し、以下のように指定のデータを削除した。 その後、そのデータに対してLightGBMで学習させ、その過程でmean_squared_errorをかけるとタイトルのエラーが発生した。

df_train = df_train[df_train['target'] > 500]

以下のサイトを参考に、データ削除後にindexをリセットしたらエラーが出なくなった。 www.it-swarm.dev

df_train = df_train.reset_index(drop=True)