【问题标题】:R quantile regression monotone cubic splineR分位数回归单调三次样条
【发布时间】:2020-04-01 07:57:01
【问题描述】:

我正在使用一个自然三次样条对一些数据运行分位数回归模型,该模型需要单调递减(因为它不能在任何点物理增加)。首先,我使用 splines 包中的 ns() 函数来实现这一点,但很快发现它不会这样做(不足为奇)。所以我从包splines2 中找到了函数mSpline,它应该适合单调样条曲线,但它也不起作用。下面是两个函数的示例,以及它们如何在 mtcars 上失败。

如何通过我的方法或其他方法实现获得单调递减样条曲线的目标?

如果可以将其他变量添加到模型中而不是样条曲线,则可以加分。

library(quantreg)
mod=rq(mpg~ns(hp,df=3),data=mtcars,tau=0.99)
mod=rq(mpg~mSpline(hp,df=3),data=mtcars,tau=0.99) #monotone

preds=predict(mod)

plot(mtcars$mpg~mtcars$hp)
points(preds~mtcars$hp,col=2,cex=1,pch=16)

【问题讨论】:

    标签: r spline quantile-regression


    【解决方案1】:

    您问题的第一部分:可以使用 Splines 包中的 splineDesign 和 quantreg(rq 函数的选项 method="fnc")来实现具有平滑样条和单调性限制的分位数回归。 R 代码可从开放存档http://qed.econ.queensu.ca/jae/datasets/haupt002/https://doi.org/10.1002/jae.2347 的补充中获得

    您问题的第二部分:实现的模型是可加的,允许添加更多样条、参数或半参数组件。

    【讨论】:

    • 您能说明如何在 mtcars 数据集上使用它 - 示例代码吗?
    猜你喜欢
    • 1970-01-01
    • 2019-10-18
    • 1970-01-01
    • 1970-01-01
    • 2021-10-18
    • 1970-01-01
    • 1970-01-01
    • 2014-06-07
    • 1970-01-01
    相关资源
    最近更新 更多