Можно ли иметь собственный дистрибутив, используя qqPlot из машины? - PullRequest
0 голосов
/ 08 октября 2019

Я хочу создать QQ-сюжет, но не хочу сравнивать его со стандартным нормальным распределением. В настоящее время у меня есть это:

log_amount = runif(100)
  fit = fitdistr(log_amount, "normal") 
  qmy_distribution = function(p) {
      return(qnorm(p, fit$estimate[1], fit$estimate[2]))
  }
  expected = qmy_distribution(ppoints(length(log_amount)))
  qqplot(log_amount, expected, main = title)
  qqline(log_amount, col = 'blue', distribution = qmy_distribution)

Я хотел бы иметь доверительные интервалы, которые предоставляет qqPlot из пакета car, но я не могу понять, как это сделать. Есть ли способ предоставить мою пользовательскую квинтильную функцию?

1 Ответ

0 голосов
/ 10 октября 2019

Оказывается, вам также нужно предоставить функцию плотности:

  log_amount = runif(100)
  qmy_distribution = function(p) {
      return(qnorm(p, fit$estimate[1], fit$estimate[2]))
  }  
  dmy_distribution = function(p) {
    return(dnorm(p, fit$estimate[1], fit$estimate[2]))
  }
  expected = qmy_distribution(ppoints(length(log_amount)))
  qqPlot(log_amount, main = title, distribution = 'my_distribution',
         xlab = 'Predicted Quantiles', ylab = 'Actual Quantiles')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...