簡體   English   中英

使用R的概率轉換

[英]Probability transformation using R

我想將具有cdf F(x)的連續隨機變量X轉換為具有cdf F(y)的連續隨機變量Y ,並且想知道如何在R中實現它。

例如,對遵循正態分布(X)的數據執行概率轉換,以使其符合所需的威布爾分布(Y)。

(x = 0的CDF F(x = 0)= 0.5,CDF F(y)= 0.5對應y = 5,然后x = 0對應y = 5等)

有許多內置的分布函數,以“ p”開頭的函數將轉換為統一的,以“ q”開頭的函數將轉換為統一的。 因此,示例中的轉換可以通過以下方式完成:

y <- qweibull( pnorm( x ), 2, 6.0056 )

然后只需更改其他情況下的功能和/或參數即可。

distr包也可能對其他功能感興趣。

通常,您可以通過以下方式將X上的觀測值x轉換為Y上的觀測值y

  • 得到X≤x的概率,即F X (x)。
  • 然后確定哪些觀測值y具有相同的概率,

也就是說,您希望概率Y≤y= F Y (y)與F X (x)相同。

這樣得出F Y (y)= F X (x)。

因此y = F Y -1 (F X (x))

其中F Y -1更好地稱為分位數函數Q Y。 從X到Y的整體轉換總結為:Y = Q Y (F X (X))。

在您的具體的例子,從R的幫助下,正態分布的分布函數是pnorm和Weibull分布的分位數功能是qweibull ,所以要首先調用pnorm ,然后qweibull的結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM