问题标签 [quantile-regression]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 绘制从一个数据集生成的分位数回归线并将这些线覆盖到另一个散点图上,保持源格式
我使用 aa taus <- c(.05,.25,.5,.75,.95) 生成了散点图和分位数线,我对所有结果感到满意,但似乎我的代码重复了少量。当我创建手动比例时,我必须重复代码部分以清理图例。
第一个问题:如何选择图例中的文本并为我选择的选定变量着色?我想给克拉夫岛和斯蒂尔顿湾涂上深蓝色……
![在此处输入图像描述][1]
看来我还不能输入图像或数据的 csv ......无论如何,我都对缺少数据感到抱歉。
第二个问题:如何从第一个图(gg_taus)绘制 qeom_quantile 回归线并将它们放在新的散点图上。我当前的代码正在创建一个新的分位数回归,但我想要第一个。
![在此处输入图像描述][2]
代码如下:
r - 有没有一种简洁的方法可以用 geom_quantile() 中的方程和其他统计数据来标记 ggplot 图?
我想以与拟合线性回归geom_quantile()
类似的方式包含拟合线的相关统计数据geom_smooth(method="lm")
(我以前使用过ggpmisc,这很棒)。例如,这段代码:
对于分位数回归,您可以换出geom_smooth()
并geom_quantile()
绘制一条可爱的分位数回归线(在本例中为中位数):
您将如何将摘要统计信息发送到标签,或者在旅途中重新创建它们?(即除了在调用 ggplot 之前进行回归,然后将其传递给然后进行注释(例如,类似于此处或此处为线性回归所做的事情?
python - 如何使用 statsmodels quantreg 拥有多个独立值列
smf.quantreg('<independant values> ~ <dependant values>', df).fit(q=0.9)
现在我正在尝试通过在https://www.statology.org/quantile-regression-in-python/中输入公式和数据框来使用 statsmodels.formula.api 的 quantreg但是我找不到如何以采用多个独立值的方式构造公式,我尝试使用“xValue1,xValue2 ~ yValue”的结构,但这会导致我得到行不匹配错误,让我认为 statsmodels 假设我的 xValues 是行而不是列。
r - 如何在 R 中进行无条件分位数回归?
我知道在 R 中进行无条件分位数回归的唯一包是 uqr。不幸的是,它已从 CRAN 中删除。尽管我仍然可以使用它,但它的功能是有限的(例如,不进行显着性检验或允许跨分位数比较效果)。我想知道是否有人知道如何使用他们编写的函数或其他方式在 R 中执行 UQR。
r - R quantreg:边界条件 rq() 函数进入无限循环
我面临一个问题
没有完成计算。没有错误和警告。我跟踪代码,发现 rq.fit.br() 中的 .Fortran() 没有完成计算。我对 Fortran 不熟悉,所以让我在这里问这个问题。我想知道导致这个无限循环的边界条件。如果我知道的话,我可以避免这种无休止的计算。
提前谢谢你的帮助。
r - 按因子组将函数应用于列的子集
假设我想通过列的所有因子值将简单的分位数回归应用于数据框中的列子集。
以 mtcars 为例。
这里我们cyl
取值为 4、6 或 8 的因子。
cols
现在假设我想对when中的每一列应用分位数回归cyl == 4, 6 and 8
。我想将结果存储在列表列表中:
store <- rep(list(list()), length(cols))
因此store
将有 4 个元素,每个元素对应于cols
. 往下一层,列表有 3 个元素,每个元素对应cyl
. 再往下走,每个元素都包含分位数回归的结果。
在 R 中执行此操作的最佳方法是什么?我试图用嵌套for
循环来解决这个问题,但如果可能的话,我更愿意避免这种情况。
编辑:这是我的工作解决方案,但如果有更简单的方法不涉及使用,请告诉我reverseList()
r - 分位数回归森林的预测区间覆盖率高于预期?
问题:
哪些因素可能导致预测区间的覆盖范围比预期的更广?特别是关于带有ranger包的分位数回归森林?
具体上下文+ REPREX:
我通过欧洲防风草和tidymodels软件包套件使用分位数回归森林ranger
来生成预测区间。我正在查看一个使用ames
住房数据的示例,并惊讶地发现在下面的示例中,当在保留数据集上评估时,我的 90% 预测区间的经验覆盖率约为 97%(训练数据的覆盖率甚至更高) .
这更令人惊讶,因为我的模型在保留集上的表现比在训练集上的表现要差得多,因此我猜想覆盖率会低于预期,而不是高于预期?
加载库、数据、设置拆分:
指定模型工作流程:
对训练和保留数据集进行预测:
显示训练数据和保留数据的覆盖率远高于预期的 90%(经验上似乎分别为 ~98% 和 ~97%):
猜测:
- 关于
ranger
包或分位数回归森林的某些东西在估计分位数的方式上过于极端,或者我以某种方式在“极端”方向上过度拟合——导致我高度保守的预测区间 - 这是此数据集/模型特有的怪癖
- 我遗漏了某些东西或设置不正确
python - Keras 多输出问题未应用适当的损失函数
我正在尝试使用功能 API中描述的每个输出中的不同损失函数来实现多输出回归问题。对于每个输出,我尝试使用与每个输出对应的自定义损失函数(分位数)。但是,该模型似乎没有适当地应用不同的损失函数,并且仅针对其中一个评估每个输出(它恰好是列表中的最后一个)。
在训练期间,模型快速收敛到每个输出的值。在测试样本上评估模型会为每个输出层产生相同的损失:
但正如我所料,单独循环遍历每个损失函数会产生不同的损失值。
这个真的让我摸不着头脑。我的直觉告诉我,我指定输出层或损失函数的方式存在问题。
r - 在 quantreg 包中滥用 predict.rq?
我正在使用quantreg
包来预测基于训练集的新数据。predict.rq
但是,我注意到orpredict
和手动执行之间存在差异。这是一个例子:
分位数回归设置为
我要预测的新数据集是
我使用predict.rq
orpredict
来预测 newdata。两者都返回相同的结果:
我也手动根据系数矩阵进行预测:
我希望两者在数字上是相同的,但它们不是:
他们的差异不容忽视。
然而,预测原始数据集X
,两者都返回相同的结果,即
使用该功能时我会错过什么吗?谢谢!