估计指数数据变换的伽玛参数

时间:2017-11-08 19:13:24

标签: r

我正在进行数据转换以获得正常性。已知指数变换(manly,1974)适用于偏斜的单峰数据(例如,卡方形)。转换由
给出 Y =(EXP(伽马* X)-1)/(伽马)

我已经在R中编写了以下代码来完成这项工作(我使用manly提出的gamma公式)

exponential <- function(x,gamma){
  l= length(x)
  y=rep(0,l)
  for (i in 1:l){
    y[i]= (exp(gamma*x[i])-1)/(gamma)
  }
  return(y) 
  }
rmomentcalc <- function(x,r){
  l=length(x)
  mean=mean(x)
  tempmom=0
  for (i in 1:l){
   tempmom=tempmom + (x[i]- mean)^r
  }
  rmom= tempmom/l
  return(rmom)
  }

gammacalc <- function(x){
  mean=mean(x)
  gamma=(2*rmomentcalc(x,3))/(3*((rmomentcalc(x,2)^2))-rmomentcalc(x,4))
  return(gamma)
}
x= rchisq(100,5)
gamma=gammacalc(x)

y=exponential(x,gamma)
shapiro.test(y)
plot(density(y))

但是这永远不会恢复正常分布,我真的不知道错误是什么。

0 个答案:

没有答案