# 載入 haven 套件,用來讀取 SPSS 的 .sav 資料檔
library(haven)
# 讀取 PISA 2022 資料檔,並將資料儲存於 pisa 物件中
pisa <- read_sav("PISA_tawian2022_trimmed_lab.sav")
# 計算 ESCS 的平均數,na.rm = TRUE 表示排除遺漏值 NA
mean_ESCS <- mean(pisa$ESCS, na.rm = TRUE)
# 計算 ESCS 的標準差,用來了解資料相對於平均數的分散程度
sd_ESCS <- sd(pisa$ESCS, na.rm = TRUE)
# 找出 ESCS 的最大值
max_ESCS <- max(pisa$ESCS, na.rm = TRUE)
# 找出 ESCS 的最小值
min_ESCS <- min(pisa$ESCS, na.rm = TRUE)
# 計算 ESCS 的全距,全距 = 最大值 - 最小值
range_ESCS <- max_ESCS - min_ESCS
# 計算 ESCS 的中位數,表示排序後位於資料中央的數值
median_ESCS <- median(pisa$ESCS, na.rm = TRUE)
# 計算 ESCS 的四分位距 IQR,表示中間 50% 資料的分散範圍
IQR_ESCS <- IQR(pisa$ESCS, na.rm = TRUE)
# 將上述統計結果整理成資料表,並利用 round() 四捨五入至小數點後兩位
result <- data.frame(
統計值 = c("均值", "標準差", "最大值", "最小值",
"全距", "中位數", "IQR"),
ESCS = round(c(mean_ESCS, sd_ESCS, max_ESCS, min_ESCS,
range_ESCS, median_ESCS, IQR_ESCS), 2)
)
# 顯示最後整理完成的描述性統計結果
result
## 統計值 ESCS
## 1 均值 -0.27
## 2 標準差 0.91
## 3 最大值 4.21
## 4 最小值 -3.84
## 5 全距 8.05
## 6 中位數 -0.24
## 7 IQR 1.38
首先使用 library(haven) 載入 haven 套件,使 R 能夠讀取
SPSS 所使用的 .sav 格式資料,再利用 read_sav()
將 PISA 2022 資料讀入 R,並儲存在 pisa 物件中。
在統計分析部分,使用 mean()
計算平均數、sd() 計算標準差、max() 與
min()
分別取得最大值及最小值,並以最大值減去最小值計算全距。另外,使用
median() 計算中位數,以及 IQR()
計算四分位距。
各函數中設定
na.rm = TRUE,代表在計算統計量時排除遺漏值(NA),避免因資料中存在遺漏值而無法得到統計結果。
最後利用 data.frame() 將各項統計值整理成表格,並使用
round(..., 2) 將結果四捨五入至小數點後兩位。分析所得 ESCS
的平均數為 -0.27、標準差為 0.91、最大值為 4.21、最小值為 -3.84、全距為
8.05、中位數為 -0.24,而四分位距為 1.38。