-3

現在、Rで描きたい複雑な関数に苦労しています。基本的には分布と他の従属確率の組み合わせなので、正規分布を修正する必要があります。

最終的な式は次のようになります。

積分

どうすればRで描くことができますか?

4

2 に答える 2

5

積分は正規分布の累積PDFであるため(正規化係数の欠落を除く)、を使用して計算できますpnorm

sf <- 1
mf <- 0
f <- function(x) 1/(2*sf^2*pi)*exp(-.5*((x-mf)/sf)^2) *
                 (1 - sf*sqrt(2*pi)*pnorm(x, mf, sf))
curve(f, from=-2, to=2)

要因は、sf*sqrt(2*pi)欠落している正規化を補うことです。数学が正しいかどうかは100%確信できませんので、自分でも確認してください。

編集:Ben Bolkerが指摘したように、の最初の部分はでf簡略化できdnorm、コードを読みやすくします。

f <- function(x) dnorm(x, mf, sf)/(sqrt(2*pi)*sf) *
                 (1 - sf*sqrt(2*pi)*pnorm(x, mf, sf))

曲線

于 2012-09-10T11:20:17.957 に答える
3

あなたは方程式を持っているのでstats::integrate、あなたの定義の定積分項を計算するために使用してくださいf(x)。次に、例として: plot(0:1000, f(0:1000),t='l')

于 2012-09-10T11:16:21.093 に答える