[解決済み] rfImpute後の予測値の取得
2022-02-27 01:56:15
質問
randomForestパッケージを使ってモデリングをしています。その
rfImpute
関数は、モデルフィットの際に欠損値を処理するのに非常に優れています。しかし
予測
を、欠損値を持つ新しいケースに適用できますか?
の例を参考にしています。
?rfImpute
.
iris.na <- iris
set.seed(111)
## artificially drop some data values.
for (i in 1:4) iris.na[sample(150, sample(20)), i] <- NA
## impute the dropped values
set.seed(222)
iris.imputed <- rfImpute(Species ~ ., iris.na)
## fit the model
set.seed(333)
iris.rf <- randomForest(Species ~ ., iris.imputed)
# now try to predict for a case where a variable is missing
> predict(iris.rf, iris.na[148, , drop=FALSE])
[1] <NA>
Levels: setosa versicolor virginica
解決方法は?
それから4年、1社...。
は
rxDForest
は、Microsoft R Server/Client に付属する関数で、欠損値を持つケースの予測値を得ることができます。これは
rxDForest
と同じコードを使用しています。
rxDTree
は、単一の決定木のフィッティングのために、後者のサロゲート変数を作成する機能を利用しています。
iris.na <- iris
set.seed(111)
## artificially drop some data values.
for (i in 1:4) iris.na[sample(150, sample(20)), i] <- NA
library(RevoScaleR)
# rxDForest doesn't support dot-notation for formulas
iris.rxf <- rxDForest(Species ~ Petal.Length + Petal.Width + Sepal.Length + Sepal.Width,
data=iris.na, nTree=100)
pred <- rxPredict(iris.rxf, iris.na) # not predict()
table(pred)
# setosa versicolor virginica
# 50 48 52
(@alex keilによる回答は独創的ではありますが、予測を呼び出すたびにモデルを再フィットする必要があるため、実稼働環境ではあまり実用的ではありません。それなりの大きさのデータセットであれば、数分から数時間かかることもある)
関連
-
[解決済み】エラー:私のコードで予期しないシンボル/入力/文字列定数/数値定数/SPECIALが発生した
-
[解決済み】 'height' はベクトルか行列でなければならない barplot のエラー
-
[解決済み】「arguments imply differing number of rows: x, y」というエラーは何を意味するのか?
-
[解決済み】Rのメモリ管理/サイズn Mbのベクトルを割り当てられない
-
[解決済み】 boxplotに色を追加する - "離散的なスケールに連続的な値が供給される "エラー
-
[解決済み】match.fun(FUN)でのエラーについて)
-
[解決済み】 if/while (条件) {: TRUE/FALSEが必要な場所に値がない場合のエラー
-
[解決済み】Rで、Error: ggplot2 doesn't know how to handle of data of class numericに対処する。
-
[解決済み】seq_alongはうまくいくが、seqが意図しない結果を生む例とは?
-
[解決済み】Rで「中断されたプロミスの評価を再開する」という警告を回避する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] promise already under evaluation: recursive default argument reference or earlier problems?
-
[解決済み】'builtin'型のオブジェクトはsubsetableではない【重複
-
[解決済み】「arguments imply differing number of rows: x, y」というエラーは何を意味するのか?
-
[解決済み】数学関数への非数値引数
-
[解決済み】エラー:ベクターメモリの枯渇(制限に達したか) R 3.5.0 macOS
-
[解決済み】添え字付き代入でNAを使用することはできません
-
[解決済み】scale_color_manual()が動作しない件
-
[解決済み】lis[[i]]のエラー:1つ未満の要素を選択しようとした場合
-
[解決済み】apply()とadply()の出力が異なる件)
-
[解決済み】「'dimnames' [1]の長さが配列の範囲と等しくない」とはどういう意味ですか?