gpt4 book ai didi

r - 广义加性模型 (GAM) 中的自相关

转载 作者:行者123 更新时间:2023-12-01 06:35:36 25 4
gpt4 key购买 nike

我有一个关于河流水温、气温和流速的时间序列数据集。我创建了一个 GAM 模型来根据气温和流量预测水温。但是我没有考虑数据集中的自相关。预测变量和因变量中的每个数据点都不是独立的(即第 2 天的气温不独立于第 1 天的气温)。

有人可以帮助我使用适当的代码在我的模型中包含某种形式的自相关度量(AR1?)。据我了解,我需要使用 gamm()函数而不是 gam()功能?

我目前的模型是这样的:
model <- gam(W.T.Mean ~ s(T.Mean) +s(Discharge), data = Pre_regulation_temp)
W.T.Mean 是平均每日水温。
T.Mean 是平均每日气温。
排放量是平均日流量

提前致谢

最佳答案

你实际上有几个选择

  • gamm()correlation = corAR1(form = ~ time) (其中 time 是变量,它为您提供均匀间隔观察的时间顺序
  • bam()并指定一个已知值 rho ,AR(1) 参数。

  • 也就是说,推理的问题是 为条件估计模型(即协变量的影响)响应是独立且同分布的。换句话说,我们期望模型的残差是独立的(不是自相关的)。如果空气温度对水温的瞬时(平滑)影响足以使模型残差独立,那么您不一定需要做任何事情来校正模型。

    但是,如果估计的气温平滑效应非常不稳定,这可能表明估计的效应受​​到数据中自相关的影响。我预计空气和水温之间的关系相对简单,在低端和高端都有饱和效应&mdash;你不能让水低于 0,但气温可以远低于 0,同样在高端,你不会因为气温升高单位而得到同样的水温升高。所以检查估计的平滑,看看效果是否比你预期的更复杂。如果是,您应该尝试使用 gamm() 进行拟合。看看这如何改变估计的平滑度。如果它没有太大区别,那么我会回到我原来的 gam()并查看模型残差的自相关函数,如果这表明自相关问题,那么您要么需要通过向 gam() 添加项来纠正它型号或切换回 gamm()correlation = ....指定并将其用于推理。

    其他更复杂的选项是使用 brms 包,它还可以估计具有 AR 或 ARMA 相关结构的模型。

    关于r - 广义加性模型 (GAM) 中的自相关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47586110/

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