1

我有一个变量,我想将其转换为具有已知形状和速率参数的伽马分布。如何将变量转换为 R 中的伽马分布?我研究了 dgamma、pgamma 和 qgamma 函数,但我不知道是否有任何函数可以满足我的要求。

这是一个小例子:

variable <- rnorm(100)
shape <- .83
rate <- .01

注意:我意识到这个例子使用了正态分布的数据(它不适合伽马分布),但我需要将变量重新调整为原始的伽马分布。

4

1 回答 1

8

使用分布和分位数函数来翻译:

qgamma(pnorm(variable), shape=.83, rate=.01)

这假设它variable的意思是 0, sd 1 (就像你的例子一样)。否则,您可以将均值和标准差传递给pnorm.

要查看转换:

plot(density(variable))

在此处输入图像描述

plot(density(qgamma(pnorm(variable), shape=.83, rate=.01)))

在此处输入图像描述

于 2014-06-01T04:13:53.630 回答