问题标签 [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.
python - AttributeError:“numpy.ndarray”对象没有属性“index”
我正在研究一个分位数回归神经网络 (QRNN),它可以作为风力发电的预测器以及虚假数据注入攻击的检测器。
我几乎完成了它,但我试图通过取中位数分位数(tau = 0.5)并使用 RMSE 将其与实际风能进行比较来量化它的准确性(同时还试图绘制实际风能与中位数分位数的关系) . 但是,我一直遇到问题。
因为 q_hat(预测的中位数)是一个 numpy 数组,而 y_test(实际风力测试数据)是一个 pandas 数据框,所以我必须将 y_test 转换为 numpy,但它给了我这个错误:
“AttributeError:‘numpy.ndarray’对象没有属性‘index’”
这是此代码所需的 pinball_loss.py 文件:
这是我在 Jupyter Notebook 中的代码(为方便起见,我用虚线分隔单元格):
上面的最后一个单元格是我收到以下错误的地方:
当我尝试使用 RMSE 绘制中位数分位数与实际风力功率(红线)时,出现上述“属性误差”后会发生以下情况
我还尝试使用我对建立 tau 的单元格和最后一个单元格的代码进行编辑的代码执行以下操作:
我得到以下情节: 这是当我做 tau = np.arange(0.49, 0.51, 0.01) 和 N_tau = len(tau)
虽然这看起来是正确的并且几乎是我想要的,但还有另一个问题!每次我重新启动整个内核时,RMSE 都会不断变化(每次都会变小一点,即从 15,000 到 14950 到 14830 等)。
我非常接近完成这个,我只想通过比较中位数与实际风力来验证我的 QRNN 的准确性,但这部分(这可能是一个简单的修复)给我带来了很多麻烦. 请帮忙!
python - python中的单位根分位数自回归
我正在使用 QAR 模型并在 Python 中搜索文档或代码示例。我正在专门寻找 Koenker 和 Xiao (2004) 方法的 Python 实现。
r - R分位数回归单调三次样条
我正在使用一个自然三次样条对某些数据运行分位数回归模型,该模型需要单调递减(因为它不能在任何点物理增加)。首先,我使用包中的ns()
函数splines
来实现这一点,但很快发现它不会这样做(不足为奇)。所以我mSpline
从包splines2
中找到了应该适合单调样条的函数,但它也不起作用。下面是这两个函数的示例以及它们如何在mtcars
.
如何通过我的方法或其他方法实现获得单调递减样条曲线的目标?
如果可以将其他变量添加到模型中,则可以加分,这些变量不是样条曲线。
plot - 使用 xtqreg Stata 命令绘制分位数回归?
有没有办法专门用xtqreg Stata 包绘制分位数回归线?xtqreg计算具有固定效应的分位数回归: https ://ideas.repec.org/c/boc/bocode/s458523.html
python-2.7 - python中的分位数回归
我在 python (python 2.7) 中有一个数据集。我想找到这个数据集的分位数回归。任何人都可以帮我解决它吗?谢谢你。这是我的代码:
r - R Quantreg:具有分类调查数据的奇点
对于我的学士论文,我正在尝试对来自调查的恒定总和数据应用线性中值回归模型(参见 A.Blass (2008) 的公式)。这是重新创建 A. Blass 等人 (2008) 提出的概率诱导方法的尝试 -使用诱导选择概率来估计随机效用模型:电力可靠性的偏好
我的因变量是常数总和分配的对数赔率转换。使用以下公式计算:
我的自变量是交货成本、最小订单数量和交货窗口,每个分类变量都有级别 0、1、2 和 3。这里,级别 0 表示无选项。
我尝试运行以下分位数回归(使用 R 的 quantreg 包):
但是,我遇到了以下表明奇点的错误:
我进行了线性回归并应用了 R 的别名函数以进行进一步调查。这告诉我三个完美多重共线性的案例:
- 最小订货量 3 = 交货成本 1 + 交货成本 2 + 交货成本 3 - 最小订货量 1 - 最小订货量 2
- 交付窗口 3 = 交付成本 1 + 交付成本 2 + 交付成本 3 - 交付窗口 1 - 交付窗口 2
- NoneOpt = 拦截 - 交付成本 1 - 交付成本 2 - 交付成本 3
事后看来,这些案例都是有道理的。当 R 二分分类变量时,您通过构造得到这些结果,交付成本 1 + 交付成本 2 + 交付成本 3 = 1 和最小订货量 1 + 最小订货量 2 + 最小订货量 3 = 1。重写给出了第一个公式。
它看起来像一个经典的假陷阱。为了解决这个问题,我尝试手动对数据进行二分法并使用以下公式:
我现在得到以下信息,而不是错误消息:
使用汇总功能时:
有人熟悉这个问题吗?我正在寻找替代解决方案。也许我在使用 rq() 函数时出错了,或者数据可能被歪曲了。
我很感谢您的任何意见,在此先感谢您。
可重现的例子
示例数据+代码链接:GitHub
python - Statsmodel 奇怪的行为
我在 python 中使用 statsmodels 来执行分位数回归。我正在运行分位数 99 和分位数 1 来查看我的分布的极端分位数。
输出是
也就是说,百分位数 1、目标和百分位数 99 的分布并没有太大的不同。这是预期的还是我错过了什么?
python - python statsmodels:输出“formula.api”与“regression.quantile_regression”的差异
对于statsmodels
using的模块python
,我想知道使用statsmodels.formula.api
vs调用相同程序的差异是如何产生的statsmodels.regression.quantile_regression
。特别是,我获得了参数估计的差异。
附上一个最小的工作示例。
编辑:
我需要编辑我的问题;下面提出的解决方法,我仍然非常感激,在应用设置中不起作用;原因:我没有只有 1 个回归器。请在附件中找到修改后的版本。
python-3.x - QuantReg:“交互式”对象没有“适合”属性
我正在尝试使用 statsmodels 拟合分位数回归。在我的笔记本电脑中运行的相同代码在云中失败,并说它没有 fit 方法。但在文档中,我看到它有 fit 方法。是什么原因造成的?我在 zeppelin notebook 中使用它。
这是我收到的错误消息:
AttributeError:“交互式”对象没有“适合”属性