2018年5月18日pandasで欠損値NaNを削除、置換(最小、平均、最大)する医療用データの未検査項目やアンケート調査データの無回答項目のように、欠損値が存在するデータは多数存在します。機械学習を行う上でも欠損値が全くないというデータはまねで何かしらの項目には欠損値が存在することがよくあります。それではその欠損値はどのようにしたらいいのでしょうか?簡単なケースとしては欠損値が入っているデータそのものを削除するという方法があります。欠損値のデータを何かしらの値で置き換えるという方法もあります。今回は欠損値についての対処方法について説明します。inline各種ライブラリのインポートを行います。pd.DataFrame({'a':[1.0,2.0,3.0,4.0,5.0],'b':[11,np.nan,13,14,15],'c':[21,22,np.nan,24,25],'d':[31,32,33,np.nan,35],'e':[41,42,43,44,np.nan]})df今回のお試し用として欠損値のデータを作成しています。5×5の表を作成し一部のデータに対して欠損値のデータを作成しています。欠損値はnp.nanを指定することで作成することができます。欠損値は"NaN"という文字で表現されています。df.isnull()12#欠損値を確認する(False:欠損以外、True:欠損)df.isnull()先ほどの表でも欠損値を確認することができますが、欠損値があるかどうかをTrue,Falseの形式で見ることもできます。isnull関数を使用することで、欠損値だった場合はTrue,欠損値ではない場合はFalseが返却されます。bool列単位で指定することもできます。列単位で指定してsnull関数を使用することで、欠損値だった場合はTrue,欠損値ではない場合はFalseが返却されます。df.dropna(how='any',axis=0)12#どこかに欠損値が一つ以上入っている行を削除するdf.dropna(how='any',axis=0)dropnaを指定することで、欠損値が入っている行、または列全体を削除することができます。dropnaの引数として,axis=0(行指定)、how='any'(どれか)を指定しています。この意味は行のどれかに欠損値が入っていたら削除するという意味となります。df.dropna(how='any',axis=1)12#どこかに欠損値が一つ以上入っている例を削除するdf.dropna(how='any',axis=1)dropnaを指定することで、欠損値が入っている行、または列全体を削除することができます。dropnaの引数として,axis=1(列指定)、how='any'(どれか)を指定しています。この意味は列のどれかに欠損値が入っていたら削除するという意味となります。df.fillna(0)12#欠損値を0で置き換えるdf.fillna(0)欠損値を削除するのではなく、何かしらの値で置き換えることにします。fillna関数を使用することで欠損値を置き換えることができます。ここでは0を指定しているため欠損値は0で置き換えられることになります。df.fillna(df.min())12#欠損値を最小値で置き換えるdf.fillna(df.min())同様に最小値で置き換えてみましょう。min関数を使用することで最小値に置き換えることができます。df.fillna(df.mean())12#欠損値を平均で置き換えるdf.fillna(df.mean())同様に平均値で置き換えてみましょう。mean関数を使用することで平均値に置き換えることができます。df.fillna(df.max())12#欠損値を最大値で置き換えるdf.fillna(df.max())同様に最大値で置き換えてみましょう。max関数を使用することで最大値に置き換えることができます。BotとAIを組み合わせたアプリケーションを作成します。(プログラム)で実施したアヤメのデータについて詳細に見ていきます。単純パーセプトロンを用いて論理演算を行ってみます。単純パーセプトロンの概要については以下の記事を参照してください。グリットサーチとは英名でGridSerchと呼ばれハイパーパラメータの最適化を行う機能です。...PREVあやめの識別を行ってみる(決定木)NEXTCIFAR-10のデータセットを用いてCNNの画像認識を行ってみる新着記事一覧AIプログラミング2019/7/7Windows環境でAIによる画像編集が可能なFE-GANを試してみるAIプログラミング2019/02/19猫の動画を対象にディープラーニングの特徴量を可視化してみるAIプログラミング2019/02/11VGG16モデルを使用してオリジナル写真の画像認識を行ってみるAIプログラミング2019/02/03VGG16ネットワークの各レイヤの特徴を可視化するAIプログラミング2019/01/27Scikit-Learnの識別器をループで一気に適用させるプロフィールでんだろ。ほしかま大好き室内飼い猫10才。未知の世界の興味があり、飼い主の目を盗んで脱走をすることもしばしば。@Technology_AI飼い主も未知の世界の興味があり、京都や奈良などの寺院巡りを楽しみながら旅行に行く一方、AIでの画像変換を勉強しながらブログを書いています。