R中测量数据的Box-Cox变换

R中测量数据的Box-Cox变换,r,survey,stata,R,Survey,Stata,有人知道用R中的调查数据估计Box-Cox多元变换的方法吗?我不知道有什么会考虑到地层和集群(我正在处理的数据),但即使是考虑到概率权重的东西也会很好。我最担心的是,当应用概率权重时,一个或多个变量的分布可能会改变,因此,这种转变可能会发生根本性的变化。也可能对错误和Box-Cox算法等有影响。。。但这超出了基本上的理论确认方法 更新的问题 R函数powerTransform工作得很好,但我认为还没有任何关于调查数据的信息。我原以为斯塔塔能处理好这件事,但尼克指出事实并非如此。处理采样权重的唯一

有人知道用R中的调查数据估计Box-Cox多元变换的方法吗?我不知道有什么会考虑到地层和集群(我正在处理的数据),但即使是考虑到概率权重的东西也会很好。我最担心的是,当应用概率权重时,一个或多个变量的分布可能会改变,因此,这种转变可能会发生根本性的变化。也可能对错误和Box-Cox算法等有影响。。。但这超出了基本上的理论确认方法

更新的问题

R函数
powerTransform
工作得很好,但我认为还没有任何关于调查数据的信息。我原以为斯塔塔能处理好这件事,但尼克指出事实并非如此。处理采样权重的唯一Box-Cox变换似乎是

您是否知道有任何R函数允许您对概率加权数据应用单变量和多变量BoxCox变换

我没有任何数据,但我只是想知道是否有人找到了解决办法。我知道人们喜欢举一个具体的例子,所以

单变量Box-Cox: 使用lm和svyglm(调查包)对象时,将返回单变量Box-Cox的结果


您提供的链接似乎指向SAS中在数据步骤中运行的用户定义函数。应该可以将该方法重新编程为R

如果您查看建议的SAS方法,您将看到它使用
proc transreg
来估计所需的功率转换。SAS proc不接受调查权重。我不确定
weight
选项在该过程中的作用


更新:我仔细查看了你给出的第一个链接。似乎是在
proc univariate
中进行加权,如果数据包含权重,则激活
weight
选项。但是,如果查看中的
weight
from的详细信息,您将看到权重用于操纵方差。我不确定您是否希望对您的数据使用该假设

在链接的SAS宏中使用权重应该会给出最佳转换的良好点估计,但可能会给出不合理的区间估计——因为对数似然比不会有标准的卡方分布


根据样本量调整权重以求和可能会给出一个大致正确的区间,但基于Box&Cox方法的适当设计模拟需要“工作”似然比的抽样分布(如调查用
AIC
anova
方法所用::svyglm)

您关于Stata的陈述不正确。Stata命令
boxcox
(非函数)不支持测量权重。查看哪一个是公共的,无论是否有人可以访问Stata的副本。在
boxcox
中有一些对权重的支持。我感到困惑的是,任何人都想准确地获取任何Box-Cox程序的结果。它最适合表示一个可能的转换尺度或非身份链接函数,它应该始终与您对数据和相关科学的其他了解保持一致。我不能评论R.Nick。谢谢你的评论和链接。我已经更新了我的问题。Michelle,非常感谢您对此进行调查(不幸的是,我不能投票给您的答案,因为我显然没有足够的学分)。我还没有找到任何关于使用非线性混合方法加权的好参考。我担心对人内和人与人之间差异的影响,因为调查权重相对于样本量往往非常大,因此权重创建的“复制”数量相对于样本量非常大。考虑到产出分布也是加权的,我尝试过如何恰当地处理权重,但未能找到参考。
library(survey)
data(api)
library(car)
dstrat<-svydesign(id=~1,strata=~stype, weights=~pw, data=apistrat, fpc=~fpc)
Sur<-svyglm(api00~mobility, design=dstrat)
NotSur<-lm(api00~mobility, data=apistrat)
powerTransform(Sur)
powerTransform(NotSur)
None<-svydesign(id=~1, weights=rep(1,nrow(apistrat)), data=apistrat, )
Sur2<-svyglm(api00~mobility, design=None)
powerTransform(Sur2)
summary(powerTransform(cbind(api00,mobility)~1,apistrat))