首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从GAMLSS对象进行逆orderNorm转换(bestNormalize包)?

如何从GAMLSS对象进行逆orderNorm转换(bestNormalize包)?
EN

Stack Overflow用户
提问于 2019-12-09 20:28:10
回答 2查看 674关注 0票数 3

我的y变量(n=30,000)分布非常重(正和负),fitDist GAMLSS函数为此选择ST4家族。

我试图用一个解释变量x (pb平滑)来评估基于GAMLSS的回归,但是y上的尾太重了,以至于在50个周期后,甚至在改装(time consuming+++)之后,收敛都不会达到。

因此,我使用y变换( orderNorm变换,bestNormalize包)进行归一化,使其易于快速收敛,然后从GAMLSS对象中预测拟合值。

然而,这些匹配的"orderNormalized“值是一个GAMLSS对象,因此不能使用bestNormalize的预测函数进行反演(因为后者似乎不识别GAMLSS对象)。

我的问题是:无论采用什么方法,应用orderNorm逆变换来拟合GAMLSS对象的值是可能的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-01-24 21:16:35

vignette for bestNormalize有一个类似的例子,使用lm而不是GAMLSS。请参阅小插曲的应用部分。一旦运行了规范化过程,就应该能够使用predict函数重复和反转转换。

关键是将转换对象存储为R对象,然后将其输入到predict (或者更确切地说是predict.bestNormalize)函数中。

票数 0
EN

Stack Overflow用户

发布于 2021-10-29 18:14:59

很容易对如何使用预测函数感到困惑,因此我在这里列出了没有代码的步骤(因为问题中没有示例):

代码语言:javascript
复制
1) transposeObj = orderNorm(data$outputvariable)
2) fitObj = gamlls(transposeObj$x.t ~., data)
3) pred   = predict(fitObj, type = 'response')
4) inversedpredictions = predict(transposeObj, newdata = pred, inverse = TRUE)

在纯文本中,您将数据规范化、拟合模型、使用fit进行预测,然后使用从orderNorm获得的规范化对象对预测进行预测。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59256104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档