如何找到模型预测指定值的日期?

问题描述 投票:0回答:1

我的数据由日期值组成,例如

Date       Value
2024-02-12 7
2024-02-13 8
2024-02-14 9

我已经为该数据拟合了一个模型,现在可以计算未来日期的预测值:

dat <-  read.table(textConnection("
Date Value
2024-02-12 7
2024-02-13 8
2024-02-14 9
2024-04-20 NA
"), header = TRUE, colClasses = c("Date", "integer"))
model <- glm(Value ~ Date, data = dat)
prediction <- predict(model, dat)

通过这种方式,我可以找到一个特定日期的预测值。

但是如果我想找到预测特定值的日期怎么办?

我的解决方案是计算未来很长一段时间的预测值,然后搜索预测值找到对应的日期。这种方法通常需要长序列和大数据集以及长计算时间。

例如,对于上面的示例数据,我很难确定该值是 75 的确切日期。因此,我会计算接下来几个月的所有值,然后筛选预测值以找到与值 75 对应的日期。

是否有更有效的方法可以直接找到该日期,而无需计算一系列值?

对于上面的示例,模型预测 2024 年 2 月 20 日的值为 75。如果我不知道这一点并且想要查找模型预测值 75 的日期而不计算接下来几个月的所有值怎么办?

r regression prediction data-fitting
1个回答
0
投票

您可以重新排列模型方程来计算:

# Extract the coefficient of the model you've built
coef <- coef(model)

# Calculate the date for your specific value (in this case 75)
result <- (75 - coef[1]) / coef[2]

您可能需要将数字答案转换为日期。例如

as.Date(result , origin = "1970-01-01")
© www.soinside.com 2019 - 2024. All rights reserved.