【问题标题】:Plotting Custom PDF in R在 R 中绘制自定义 PDF
【发布时间】:2019-03-14 22:09:41
【问题描述】:

给定:

考虑在 $\mathbb{R}$ 上为 $\phi$ 定义的密度函数 $\phi$跨度 class="math-container">$a\in \mathbb{R}$ 和 $b \in \mathbb{R}_+^\star$ 这样 $\forall x \in \mathbb{R}$, $$ \phi(x; a,b) = \frac{1}{\sqrt{2\pi b^2}}e^{-\frac{1}{2}\left(\frac{x-a}{b} \对)^2}。 $$ 现在考虑所谓的 Bart Simpson 概率密度函数 $f$ \begin{eqnarray} \标签{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$

尝试:

所以,我理解符号 $\phi(x; a,b)$ -- $a$ 是平均值,$b$ 是密度函数的标准差 $\phi$ .

我可以编写R 代码来模拟 $\phi$$f(x)$

  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 并进行绘制。

据我所知,没有图书馆可以这样做。我也找不到对“Bart Simpson”PDF 的任何引用。

请,任何帮助将不胜感激!

【问题讨论】:

    标签: r data-visualization pdf


    【解决方案1】:

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

    请参阅 ?plot.function?curve,包括他们的示例。

    例如

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-20
      • 2020-10-14
      • 1970-01-01
      • 1970-01-01
      • 2021-06-22
      • 2017-04-09
      • 2019-07-15
      • 1970-01-01
      相关资源
      最近更新 更多