gpt4 book ai didi

r - lm.fit(x, y, offset = offset, single.ok = single.ok, ...) : NA/NaN/Inf in 'y' , 中的错误尝试了所有可能的方法

转载 作者:行者123 更新时间:2023-12-04 12:25:09 28 4
gpt4 key购买 nike

这里我的数据集是 pd我已将其拆分为训练和测试数据 pd_train1pd_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在基础 R 或诸如 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')

你可以预测你的类(class):
predict(model, newdata = data.frame('lead_time' = c(0,1,2.5,3.5)), type = "response")

关于r - lm.fit(x, y, offset = offset, single.ok = single.ok, ...) : NA/NaN/Inf in 'y' , 中的错误尝试了所有可能的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58129132/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com