開始使用免費開始

用 Q-Q 圖檢視常態性

「分位數-分位數圖」(Q-Q 圖)是更好的圖形方法來揭露資料的非常態性。一般而言,Q-Q 圖會比較資料的分位數與某個參考分配的分位數;如果資料來自相同型態的分配(只差縮放與位置),就應該會看到大致筆直的一條線。你也需要知道,所謂的「自由度」(df)是指在你所研究的系統中,能夠影響結果的數值或觀察值的數量。

在影片中,你已經看到如何用 rnorm() 產生 1000 個常態資料點,以及如何用 qqnorm() 建立 Q-Q 圖,並用 qqline() 加上一條做為參考的直線:

> data <- rnorm(1000, mean = 3, sd = 2)
> qqnorm(data)
> qqline(data) 

在這個練習中,你會針對 djx 中的道瓊工業指數對數報酬,繪製相對於常態參考分配的 Q-Q 圖,並加上參考用的視覺引導線。接著,你會將此圖與以 rnorm()rt()runif() 產生的常態、Student t 與均勻分配的模擬資料集進行比較。本章稍後你將會學到 t 分配。

如果資料來自常態分配,點應該會貼近紅色直線(雖然在兩端可能會有些偏離)。

一樣地,djx 已載入到你的工作環境中。

本練習屬於課程

R 的量化風險管理

檢視課程

練習說明

  • 使用 qqnorm()djx 與常態分配比較,繪製 Q-Q 圖,並用 qqline() 搭配 col = "red" 加上一條紅線,以判斷圖形是否近似線性。
  • length() 計算 djx 的長度,指定給物件 n
  • rnorm() 產生 n 個標準常態變數並指定給 x1。為 x1 繪製相對於常態的 Q-Q 圖,並同樣加上一條紅線。
  • 產生自由度為 4 的 n 個 Student t 變數並指定給 x2(這一步已為你完成)。為 x2 繪製相對於常態的 Q-Q 圖,並加上一條紅線。
  • 產生 n 個均勻分配變數並指定給 x3(這一步已為你完成)。為 x3 繪製相對於常態的 Q-Q 圖,並加上一條紅線。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Make a Q-Q plot of djx and add a red line
___(___)
___(___, ___)

# Calculate the length of djx as n
n <- ___

# Generate n standard normal variables, make a Q-Q plot, add a red line
x1 <- ___(___)
___(___)
___(___, ___)

# Generate n Student t variables, make a Q-Q plot, add a red line
x2 <- rt(n, df = 4)
___(___)
___(___, ___)

# Generate n standard uniform variables, make a Q-Q plot, add red line
x3 <- runif(n)
___(___)
___(___, ___)
編輯並執行程式碼