Как наложить гистограмму плотности с помощью гамма-распределения в R? - PullRequest
0 голосов
/ 26 мая 2019

Я новичок в R и хотел бы добавить подгонку к гамма-распределению для моей гистограммы.Я бы хотел, чтобы гамма-распределение подходило для наложения моей гистограммы.

Я могу рассчитать гамма-распределение с помощью функции dgamma, а также с помощью функции fitdist.Однако я не могу наложить это гамма-распределение как подгонку к моей гистограмме.

Это код, который я пробовал:

hist(mydata, breaks = 30, freq = FALSE, col = "grey")

lines(dgamma(mydata, shape = 1))

Код, который я пробовал, не перекрывает гамма-распределениевписаться в мою гистограмму.Я получаю только гистограмму без подгонки.

1 Ответ

0 голосов
/ 26 мая 2019

Посмотрите, может ли следующий пример помочь в наложении

  1. встроенная линия черного цвета
  2. PDF-график красного цвета, пунктирный

на гистограмме.

Сначала создайте набор данных.

set.seed(1234)    # Make the example reproducible
mydata <- rgamma(100, shape = 1, rate = 1)

Теперь подгоните гамма-распределение к данным.

param <- MASS::fitdistr(mydata, "gamma")

Этот вектор необходим для подобранной линии.

x <- seq(min(mydata), max(mydata), length.out = 100)

И подготовьте их всех.

hist(mydata, breaks = 30, freq = FALSE, col = "grey", ylim = c(0, 1))
curve(dgamma(x, shape = param$estimate[1], rate = param$estimate[2]), add = TRUE)
lines(sort(mydata), dgamma(sort(mydata), shape = 1),
      col = "red", lty = "dotted")

enter image description here

...