[解決済み】 lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) のエラー : 'y' の NA/NaN/Inf, あらゆる方法を試したが解決しなかった。
2022-02-09 15:05:26
質問
私のデータセットは次のとおりです。
pd
で、学習データとテストデータに分割しています。
pd_train1
と
pd_train2
sku national_inv lead_time in_transit_qty forecast_3_month forecast_6_month
1 3921548 8 12 0 0 0
2 3191009 83 2 33 157 377
3 2935810 8 4 0 0 0
4 2205847 31 4 63 70 160
5 4953497 3 12 0 0 0
6 2286884 0 8 0 0 0
forecast_9_month sales_1_month sales_3_month sales_6_month sales_9_month min_bank
1 0 1 1 2 5 2
2 603 44 98 148 156 53
3 0 0 0 1 1 0
4 223 27 90 164 219 0
5 0 0 0 0 0 0
6 0 0 0 0 0 0
potential_issue pieces_past_due perf_6_month_avg perf_12_month_avg local_bo_qty
1 0 0 0.63 0.75 0
2 0 0 0.68 0.66 0
3 0 0 0.73 0.78 0
4 0 0 0.73 0.78 0
5 0 0 0.81 0.74 0
6 0 0 0.91 0.96 0
deck_risk oe_constraint ppap_risk stop_auto_buy rev_stop went_on_backorder data
1 0 0 0 1 0 No train
2 0 0 0 1 0 No train
3 0 0 0 1 0 No train
4 0 0 1 1 0 No train
5 0 0 0 1 0 No train
6 0 0 0 1 0 No train
学習データに対してlmモデルを作成したい
pd_train1
しかし、以下のようなエラーが発生します。
> fit=lm(went_on_backorder~.,data=pd_train1)
Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) :
NA/NaN/Inf in 'y'
In addition: Warning message:
In storage.mode(v) <- "double" : NAs introduced by coercion
無限大の値で検索してみました。
sapply(pd_train1, function(x) sum(is.infinite(x)))
sku national_inv lead_time in_transit_qty forecast_3_month
0 0 0 0 0
forecast_6_month forecast_9_month sales_1_month sales_3_month sales_6_month
0 0 0 0 0
sales_9_month min_bank potential_issue pieces_past_due perf_6_month_avg
0 0 0 0 0
perf_12_month_avg local_bo_qty deck_risk oe_constraint ppap_risk
0 0 0 0 0
stop_auto_buy rev_stop went_on_backorder data
0 0 0 0
また、線形モデルを作成したい学習データのNA/NaN値についても同様です。
sku national_inv lead_time in_transit_qty forecast_3_month
0 0 0 0 0
forecast_6_month forecast_9_month sales_1_month sales_3_month sales_6_month
0 0 0 0 0
sales_9_month min_bank potential_issue pieces_past_due perf_6_month_avg
0 0 0 0 0
perf_12_month_avg local_bo_qty deck_risk oe_constraint ppap_risk
0 0 0 0 0
stop_auto_buy rev_stop went_on_backorder
0 0 0
Inf %in% pd_train1$went_on_backorder
1] FALSE
NaN %in% pd_test$went_on_backorder
1] FALSE
これ以降、NA/NaN/Infの値をデータセットから取得することができなくなりました。
なぜこのようなエラーが発生するのか、どなたか教えていただけませんか?
ここで
went_on_backorder
は私のターゲット変数です。
どのように解決するのですか?
コラム
went_on_backorder
は因子です。線形回帰は数値応答変数を必要とします。
ロジスティック回帰を使用するには
glm
のようなパッケージを使用します。
vgam
. 以下は簡単な例です。
pd_train1 <- data.frame('went_on_backorder' = c('No','Yes','Yes'), 'lead_time' = 1:3)
model <- glm(went_on_backorder ~ ., data = pd_train1, family = 'binomial')
そして、クラスを予測することができます。
predict(model, newdata = data.frame('lead_time' = c(0,1,2.5,3.5)), type = "response")
関連
-
[解決済み】エラー:'dimnames' [2]の長さが配列の範囲と等しくない [終了しました]
-
[解決済み】'builtin'型のオブジェクトはsubsetableではない【重複
-
[解決済み] 変数の型(リスト)が無効です
-
[解決済み】R: predict() の数値 'envir' 引数が長さ1でない。)
-
[解決済み] [Solved] read.csv warning 'EOF within quoted string' prevents complete reading of file.
-
[解決済み】ggplot2でのプロット:「Error: カテゴリ軸のY軸に "Discrete value supplied to continuous scale "と表示される。
-
[解決済み] テスト
-
[解決済み] na.fail.defaultのエラー:オブジェクトの値が見つからない - しかし、値が見つからないことはありません。
-
[解決済み】R4DSのエラー比較(1)は、アトミック型とリスト型でのみ可能です
-
[解決済み】起動時にパーをデフォルト値にリセットする方法
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】数学関数への非数値引数
-
[解決済み】エラー:ベクターメモリの枯渇(制限に達したか) R 3.5.0 macOS
-
[解決済み] Stataバージョン5-12の.dtaファイルではない
-
[解決済み】reshape2 meltの警告メッセージ
-
[解決済み】Rエラー。"新しい列は既存の列の後に穴を空ける"
-
[解決済み】 colMeans(x, na.rm = TRUE) のエラー : KNN分類では 'x' は数値でなければならない
-
[解決済み】Rのメモリ管理/サイズn Mbのベクトルを割り当てられない
-
[解決済み】match.fun(FUN)でのエラーについて)
-
[解決済み] ヒートマップ作成時のエラー - 外部関数呼び出しでNA/NaN/Inf (arg 11)
-
[解決済み] Rの再現性のある優れた例題の作り方