在R

时间:2019-03-14 22:09:42

标签: r data-visualization pdf

给出:

考虑对 $ \ mathbb {R} $ 定义的 $ \ phi $ 密度函数, span class =“ math-container”> $ a \ in \ mathbb {R} $ 和 $ b \ in \ mathbb {R} _ + ^ \ star $ < / span>这样 $ \ forall x \ in \ mathbb {R} $ $$ \ phi(x; a,b)= \ frac {1} {\ sqrt {2 \ pi b ^ 2}} e ^ {-\ frac {1} {2} \ left(\ frac {xa} {b} \ right)^ 2}。 $$ 现在考虑由下式给出的所谓的Bart Simpson概率密度函数 $ f $ \ begin {eqnarray} \ label {eq:bart:1d:1} f(x)= \ frac {1} {2} \ phi(x; 0,1)+ \ frac {1} {10} \ sum_ {j = 0} ^ 4 {\ phi(x;(j / 2 )-1,1/10)}。 \ end {eqnarray}

问题:

  1. $ [-\ pi,\ pi] $ 中绘制pdf $ f $ 。< / li>

尝试:

所以,我理解了符号 $ \ phi(x; a,b)$ - $ a $ < / span>是平均值,而 $ b $ 是密度函数 $ \ phi $ 的标准偏差。

我可以编写R代码来模拟 $ \ phi $ $ f(x)$ < / span>:

  calc_cdf <- function(a, b, x) {
    coef <- 1/sqrt(2*pi*b^2)
    expon <- exp(-0.5*((x-a)/b)^2)
    return(coef * expon)
  }
  calc_pdf <- function(x) {
    term1 <- 0.5 * calc_cdf(0, 1, x)
    sum2 <- 0
    for (j in 0:4) { sum2 = sum2 + calc_cdf(j/2 - 1, 0.1, x) }
    term2 <- 0.1 * sum2
    return(term1 + term2)
  }

现在这就是我遇到的问题:如何在地球上绘制PDF?有一些用于绘制已定义的PDF的库,例如EnvStats::pdfPlot,但是不允许您定义自己的PDF并进行打印。

据我所知,没有库可以这样做。我也找不到对“巴特·辛普森” PDF的任何引用。

请,我们将不胜感激!

1 个答案:

答案 0 :(得分:0)

您不需要整个库来绘制函数。它内置在基本R中。

请参见?plot.function?curve,包括它们的示例。

例如

 plot(dnorm,-3,3)
 plot(function (x) dgamma(x,shape=2),0,6)