sklearn の代入と Panda の Ffill を組み合わせて、欠損データを埋めたいと考えています。これは私のデータフレームですdf
。
FeatA FeatB FeatC FeatD
B A B D
NaN NaN NaN NaN
A A B C
NaN A A A
NaN B A A
Ffill を使用NaN
して、前の値のみを含む行 (行 2 など) を塗りつぶしたいと考えています。
行に含まれる の数が少ないNaN
場合 (たとえば、少なくとも 1 つの値がある場合)、代入を使用して、行で最も頻繁に使用される値で NaN を埋めます。
String 値を整数に変換するために LabelEncoder を使用しています。これはアルファベット順です。A=0, B=1, C=2, D = 3
. NaN が値 4 を取得することを確認するために、NaN を「Z」に変換します。data = df.fillna("Z")
次に、データを代入Z
して、 の値が行で最も頻繁に使用される値で埋められる
ようにします。imp = Imputer(missing_values=4, strategy= 'most_frequent', axis=1)
NaN
だから、私は使用しているだけの行を埋めたいffill
.
次に、LabelEncoder と代入を使用してNaN
、行で最も頻繁に使用される値をその他に入力します。
のみを含む行を選択し、それらの行のみに関数をNaN
適用できれば、他の Nan に代入を使用できます。ffill
これどうやってするの?