2016-12-11 9 views
0

scikit-learnでImputer()を使用して、その月の平均値で不足している温度値を入力する必要があります。scikit-learnでImputerを使用

まず、月に基づいてデータフレームをグループに分割しました。次に、そのグループの平均を計算し、欠損値を記入するために関数関数を呼び出しました。ここで

は、私が書いたコードですが、それはうまくいきませんでした:

def impute_missing (data_1_group): 
    imp = Imputer(missing_values='NaN', strategy='mean', axis=0) 
    imp.fit(data_1_group) 
    data_1_group=imp.transform(data_1_group['datetime']) 
    return(data_1_group) 

for data_1_group in data_1.groupby(pd.TimeGrouper("M")): 
    impute_missing(data_1_group) 

任意の提案?

+1

*私が書いたコードですが、動作しませんでした。正確なエラーは何ですか? – gobrewers14

+0

これは私が持っているものですTypeError:浮動小数点数は文字列か数字でなければなりません –

+0

今私はそれをgrouped = data_1.groupby(pd.TimeGrouper( "M"))に変更しました f = lambda x:x.fillna (x.mean()) 変換済み=グループ化['温度']。変換(f)とTypeErrorを取得しました: 'str'と 'int'オブジェクトを連結できません –

答えて

0

は、私は自分自身をscikitする新しいメートルけれども、私は私のために働いたソリューションを推奨しています。この小さな変更

imp=imp.fit(data_1_group['datetime']) data_1_group=imp.transform(data_1_group['datetime'])

を試してみてください。

1)IMPオブジェクトが最初の行

2のように、フィットするようにオーバーライドする必要があるので、これは、この場合にdata_1_group [「日時」と思われる同一のデータセットを、適合し転嫁する必要がある)であります]

これは役に立ちます。

関連する問題