Печать пользовательских PDF в R - PullRequest
1 голос
/ 15 марта 2019

Дано:

Рассмотрим функцию плотности $ \ phi $ , определенную в $ \ mathbb {R} $ для $ 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 {xa} {b} \ right) ^ 2}.$$ Рассмотрим теперь так называемую функцию плотности вероятности Барта Симпсона $ 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. Постройте pdf $ f $ в $ [- \ pi, \ pi] $ .

Попытка:

Итак, я понимаю обозначение $ \ 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-файл и выводить его на график.

Насколько я могу судить,нет библиотек для этого.Я также не могу найти ссылки на PDF "Барт Симпсон".

Пожалуйста, любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 15 марта 2019

Вам не нужна целая библиотека для построения функции. Он встроен в базу R.

См. ?plot.function и ?curve, включая их примеры.

например.

 plot(dnorm,-3,3)
 plot(function (x) dgamma(x,shape=2),0,6)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...