问题标签 [revoscaler]

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.

0 投票
1 回答
148 浏览

r - R 中的 revoScaleR::rxGlm() 问题 - GLM 残差

我可能在这里找不到答案,因为我不认为这个revoScaleR包被广泛使用。

如果我使用它创建一个 GLMrxGlm()就可以了。然而,可用的模型残差rxPredict()似乎只是“原始”残差,即观察值减去拟合值。各种转换版本(偏差残差、皮尔逊残差等)似乎不可用。

有谁知道是否有办法实现这一目标?我可以glm()通过使用(使用相同的公式、数据、误差结构、链接函数、权重)再次运行模型并使用 来获得模型的偏差残差(例如)residuals(glm_object, type = "deviance"),但这很麻烦,因为glm()运行速度非常慢(大型数据集,很多模型参数)。

谢谢。

编辑:包括我试图遵循的文献中的指导:

在此处输入图像描述

0 投票
1 回答
306 浏览

r - R 中的逻辑回归:glm() 与 rxGlm()

我在 R 中安装了很多 GLM。通常我使用revoScaleR::rxGlm()它是因为我使用大型数据集并使用非常复杂的模型公式 - 而且glm()无法应对。

在过去,这些都是基于泊松或伽马错误结构和日志链接功能。这一切都很好。

今天我正在尝试建立一个逻辑回归模型,这是我以前在 R 中没有做过的,我偶然发现了一个问题。我正在使用revoScaleR::rxLogit()虽然revoScaleR::rxGlm()产生相同的输出 - 并且有同样的问题。

考虑这个代表:

第一次调用glm()产生正确的答案。第二次调用rxLogit()没有。阅读以下文档rxLogit()https ://docs.microsoft.com/en-us/machine-learning-server/r-reference/revoscaler/rxlogit它指出“因变量必须是二进制的”。

所以看起来rxLogit()需要我y用作因变量而不是p. 但是,如果我跑

我得到一个总体平均值

取而代之的是 0.5,这也不是正确答案。

有谁知道我该如何解决这个问题?我是否需要offset()在模型公式中使用一个术语,或者更改权重,或者...

(通过使用这个revoScaleR包我偶尔把自己画成这样的角落,因为似乎没有多少其他人使用它)

0 投票
1 回答
121 浏览

r - shinyapps.io 和 Microsoft R 客户端的问题 - “rsconnect 包已过期”

我在revoScaleRWindows 10 PC 上运行 RStudio 1.3 和 Microsoft R Client 3.5.2(让我可以访问包)。我现在正在尝试设置自己以共享 Shiny 应用程序,shinyapps.io以便将来可以远程向客户发送各种“小部件”。

我已按照shinyapps.io网站上的说明在 RStudio 中安装 rsconnect 包。安装包正常。但是,然后我被指示运行以下代码来授权该帐户:

(显然我已经隐藏了名称/令牌/秘密的详细信息)

我收到一条错误消息:

错误:HTTP 426 GET https://api.shinyapps.io/v1/users/current/ rsconnect 包已过期。请更新到 CRAN 上可用的最新版本。

发生这种情况是因为通过使用 Microsoft R Client 3.5.2(例如,而不是 R 4.0.0),我无法访问最新版本的包吗?如果是这样,有没有办法解决这个问题?

谢谢你。

0 投票
1 回答
24 浏览

r - R 中 revoScaleR::rxGlm() 的方差分析问题

我建立了很多 GLM。通常在具有许多模型参数的大型数据集上。这意味着 base R 的glm()函数并不是真正有用,因为它无法处理大小/复杂性,所以我通常使用它revoScaleR::rxGlm()

但是,我希望能够对嵌套模型对进行 ANOVA 测试,但我还没有找到一种方法来对rxGlm()创建的模型对象执行此操作,因为 R 的anova()函数不适用于它们。revoScaleR提供了一个将对象as.glm()转换为rxGlm()对象的glm()函数 - 有点 - 但它在这里不起作用。

例如:

工作正常,但如果我这样做:

我看到错误消息:

同样的问题出现在之前的 SO 帖子中:Error convert rxGlm to GLM but not似乎已经解决了。

有人可以帮忙吗?如果as.glm()在这里没有帮助,还有其他方法吗?我可以编写一个自定义函数来执行此操作(将我的编码能力扩展到我怀疑的极限!)?

此外,SO 是最好的论坛,还是其他 StackExchange 论坛之一是寻求指导的更好地方?

谢谢你。

0 投票
0 回答
52 浏览

r - R 中的 GLM - 大型数据集/复杂模型公式

我使用 R 在中大型数据集上拟合大量 GLM。我的模型中通常有 500k-1M 行和多达 50 个因子(在简化之前 - 带状或删除不可预测的因子等)

Base Rglm()似乎不能很好地应对这种规模的问题。我可以并且确实使用revoScaleR::rxGlm(),这在这方面要好得多,但这有其自身的问题(不完整的文档,无法使用其他设计用于处理glm对象的 R 函数等)。

有没有我不知道的替代方案?目前这种事情首选的 glm 包是什么?

(我现在确实需要坚持 GLM 框架——我可能会在某个时候分支到其他建模技术——其中当然有很多——但这是以后的一种......)

谢谢。

0 投票
0 回答
79 浏览

r - rxLinMod 和 lm() 不一致。为什么要删除其中一个系数?

我一直在尝试对不同的值集进行线性回归,但发现有些奇怪。每当我尝试使用函数 rxLinMod() 进行线性回归时,其中一个系数会被丢弃,而每当我使用 lm() 时,这种情况都不会发生。

给我带来麻烦的数据集是这个:

日期 价值观
2020-06-19 5950
2020-06-16 5950

使用 rxLinMod 后,我得到了这个:

同时, lm() 返回:

我已经确保没有任何变量被视为一个因素,Date 属于 Date 类,而 Values 是一个数字类。我期待一个非常接近 0 的斜率。有谁知道为什么第一个系数会下降?

如果您还有什么想知道的,请随时提问。