機率與統計的教科書都會有機率密度函數(probability density function, pdf) 與累積分配函數(cumulative distribution function, cdf)的圖形,以說明累積機率值與分位點(quantile)的對應關係。在R 中,讀者可以pnorm 函數求出某一分位點的累積幾率值。例如:標準常態分位點z = 1.5 的累積機率值如下。

 > pnorm(1.5, 0, 1)

[1] 0.9331928

反過來說,qnorm 可以求出累積機率為0.9331928 所對應的標準常態分位點。


> qnorm(0.9331928, 0, 1)
[1] 1.5

為了讓讀者深刻瞭解前述的對應關係,先以R 中的curve 函數繪製標準常態的密度曲線:


> curve(dnorm(x, 0, 1), xlim = c(-3, 3), main = "Area to left of 1.5 = pnorm(1.5,0,1)")

再利用多邊形繪製函數polygon,連接密度相當高的點(橫座標從-3 到1.5)形成灰色陰影區域,並在適當的位置加上說明文字。


> cord.x <- c(-3, seq(-3, 1.5, 0.01), 1.5)
> cord.y <- c(0, dnorm(seq(-3, 1.5, 0.01)), 0)
> polygon(cord.x, cord.y, col = "grey")
> text(-0.5, 0.1, "area=pnorm(1.5,0,1)")
> text(1.5, 0.02, "1.5=qnorm(0.9331928,0,1)")

word6pic1

同樣地,R 可繪製累積分配函數的圖形,再利用abline 函數加上適當的水平與垂直線、以及說明文字。走筆至此,冀望讀者能感受到R 強大且高品質的繪圖輸出,更多的繪圖功能容後再敘。


> curve(pnorm(x, 0, 1), xlim = c(-3, 3), main = "F(z)=P(Z<=z)")
> abline(h = 0.9331928, lty = 2)
> abline(v = 1.5, lty = 3)
> text(-2, 0.85, "pnorm(1.5) is 0.9331928")
> text(1.5, 0.02, "qnorm(0.9331928) is 1.5")

 word6pic2  

參考資料: 
Verzani, J. (2001), simpleR – Using R for Introductory Statistics, The CSI Math
Department, City University of New York.

 

撰文者:
鄒慶士 博士
現任:
北商資訊與決策科學所教授
中華 R 軟體學會理事長
信箱:
vince.tsou@gmail.com

arrow
arrow

    CARS 發表在 痞客邦 留言(0) 人氣()