python データフレームの中にあるnanの処理

ゴールデンウィークはずっと勉強してました。基本的にはGCPのハンズオンと、python。どっちも仕事で使うわけじゃないけど、とりあえず暇なんだよね。

pythonいじってて意外とここ躓くなっていうところをメモメモ。

pythonに限らず、nan(not a number)の処理って意外と面倒。それも、データフレームに入ってて、他の値がstr型だったりすると、isnan()とかも使えないんですよ。isnan()を使うと、str型には適用できませんってエラー返ってくるし。

かといって、dropna()を使うとするじゃない。すると、for文を回すときにインデックで指定すると、dropna()でデータを抜いている分だけ、抜けがあるので、for文がうまいこと回らないという不具合が。

そこで、データフレームにnanがあって、他の値がfloat型じゃないときの対処法をここでご紹介。

解決方法は結構簡単で、dropna()でnanを削っちゃう。そして、インデックスをre_index()で振りなおす。これで簡単ですね。コツとしては、re_index()をする際には、古いインデックスが新しい列になるため、パラメータでdrop=Trueにしてあげると、余計な情報が残らないので、いいですよ。


この記事が気に入ったらサポートをしてみませんか?