[英]How can I generate an exponential Q-Q plot in R?
如何在R中生成指數QQ圖? 對於我使用的普通QQ情節
qqnorm(sample)
編輯 (反映@Dason的輸入)。
像這樣:
set.seed(1) # for reproducibility
Z <- rexp(1000) # random sample from exponential distribution
p <- ppoints(100) # 100 equally spaced points on (0,1), excluding endpoints
q <- quantile(Z,p=p) # percentiles of the sample distribution
plot(qexp(p) ,q, main="Exponential Q-Q Plot",
xlab="Theoretical Quantiles",ylab="Sample Quantiles")
qqline(q, distribution=qexp,col="blue", lty=2)
這是一個ggplot2
解決方案。
Z <- rexp(1000, rate = 2)
library(MASS)
params <- as.list(fitdistr(Z, "exponential")$estimate)
library(ggplot2)
qplot(sample = Z, geom = 'blank') +
stat_qq(distribution = qexp, dparams = params)
R具有qqplot
功能。 jlhoward將其“手動”並使用quantile
函數計算數據的quantile
。 但在R中你不需要這樣做。
set.seed(1)
data = rnorm(100, mean=5, sd=2)
qqplot(x=qexp(ppoints(100)), y=data, main="Exponential Q-Q Plot",
xlab="Theoretical Quantiles", ylab= "Your Data Quantiles")
qqline(data, distribution=qexp)
點擊這里查看R Plot (我沒有10個聲望發布圖片)
我沒有看到原因,為什么jlhoward只需要100分而不是1000就像他的例子中的數據長度一樣。 或者它只是一個打字錯誤?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.