2021/12/20

摘要

  • 運用開放軟體R管理與分析大型教育資料庫的檔案
  • 嵌入intsvy 套件並結合maptools等相關套件將分析結果呈現在地圖上以利比較
  • 範例:分析十五個國家,十五歲學生數學成就表現與多個影響該表現的相關因素

R的優勢

  • 免費且容易取得共享資源
  • 支援Windows、LINUX等多種作業系統
  • 強大繪圖功能(包含2D及3D)
  • 執行速度快,可立即得到輸出結果
  • 與其他語言有高度相容性(C、C++、JAVA、Python、Fortean、Perl)
  • 語義主要使用函數設計 》》有益於統計計算圖表繪製
  • 支援各種資料格式輸入與輸出
  • 可利用完善的內建協助系統搜尋指令
  • 內建簡單易學的語法,且易於擴展所編寫的函數
  • 擁有豐富的擴充套件(Packages)
  • 提供社群資源讓使用者交流
  • 所有函數、資料、變項、運算、結果皆可以物件形式儲存,以利之後繼續操作

R在其他領域與大型資料庫的應用

  • R的綜合典藏網(CRAN)附有執行檔、原始碼與說明檔,也收納各類用戶所撰寫的套件
  • 在 CRAN 網站上的主題列表可知R在各領域已被廣泛的使用,如 財務分析、遺傳學、機器學習、醫學影像、社會科學等用皆有各自對應的擴充套件,因此受到廣大使用者的支持
  • R的使用者可自行開發套件的擴充,以利各領域統計運算
  • 近年來台灣亦開始運用R分析大型資料庫數據的研究

intsvy套件介紹

  • 針對TIMSS、PIRLS、PISA與PIAAC四個大型教育資料庫所開發的套件

  • 以PISA為例,介紹intsvy 套件的各種函數:

    一、數據的選擇與合併
            pisa.select.merge   從PISA提供的數據檔中直接選取與合併所需的檔案與變項
    
    二、次數表的計算與繪製 
            pisa.table   針對類別變項產生包括百分比與標準誤的次數表
            plot   將次數表進行圖形化
    
    三、變項平均數的計算與繪製 
            pisa.mean   計算觀察變項(不包括似真值)的平均數與標準誤。
            pisa.mean.pv   可使用五個似真值計算平均成績與標準誤。
            plot   將平均數進行圖形化
    
    四、迴歸分析的計算與繪製
            pisa.reg.pv   執行有似真值與重複抽樣加權值的線性迴歸分析(OLS)
            plot   迴歸分析結果進行圖形化

    plot 目前僅限使用在PISA與PIAAC這兩個資料庫所提供的數據檔

範例

分析PISA2012年臺灣與其他14個國家(澳洲、加拿大、德國、西班牙、芬蘭、法國、英國、印尼、義大利、日本、墨西哥、馬來西亞、紐西蘭、美國)的15歲學生數學成就表現以及影響該表現相關因素(學生性別、家中藏書量、母親教育程、家中擁有物)

下載檔案

  • PISA data下載PISA2012資料檔,並取得spss語法

安裝intsvy

if (!require(devtools)) {
    install.packages("devtools")
    require(devtools)}
install_github("eldafani/intsvy")

選擇與合併數據

轉換變項型態、名稱及選項

更改變項型態

as.factor():將國家(CNT)從字串轉換成因子
as.numeric():將學生性別(ST04Q01)、家中藏書量(ST28Q01)、母親教育程度(ST13Q01)、家中擁有物(ST26Q01-ST26Q14)從因子轉換成數值

更改變項名稱

CNT改成Country_ID
ST04Q01改成Gender
ST28Q01改成Book
ST13Q01改成Mother
ST26Q01-ST26Q14改成Possessions

更改變項選項

「性別」改成女生是0;男生是1,再設定女生 F、男生是M
「家中藏書量」設定0-10本書是1;11-25本書是2;26-100 本書是3;101-200本書是4;201-500本書是5;500本書以上是6
「母親教育程度」改成高中畢業是5、高職畢業或五專是4、國中畢業是3、國小畢業是 2、國小肄業是1
「家中擁有物」設定選項Yes是1、No是0,並將家中擁有物的選項加總

檢視藏書量分配情形

德國(DEU)不論是男、女學生,有500本書(6)以上的人數皆多於其它十四個國家

墨西哥(MEX)不論男、女學生,只有0-10本書(1)的人數明顯多於其它十四個國家

以學生性別與家中藏書量檢視平均數學成績

臺灣(TAP)在每個家中藏書量的選項上,平均數學成績幾乎都高於其它十四個國家,除了在選項1時低於日本

印尼(IDN)在每個家中藏書量的選項上,平均數學成績都低於其它十四個國家

以學生性別與家中藏書量、母親教育程度、家中擁有物預測數學成績

.

.

.

.

.

.

.

家中藏書量:法國(FRA)最高;印尼(IDN)最低

在學生性別:只有馬來西亞(MYS)是負向,其它十四個國家皆是正向

母親教育程度:法國(FRA)最高;臺灣(TAP)最低

家中擁有物,臺灣(TAP)最高;芬蘭(FIN)最低

R-squared:家中藏書量、學生性別、母親教育程度與家中擁有物對數學成績的解釋力以法國(FRA)最高;印尼(IDN)最低。

將迴歸分析結果轉換成矩陣

載入plyr套件

library(plyr) 

資料框轉為矩陣

取出矩陣內性別、藏書量、媽媽教育程度、家中擁有物的估計值

.

合併估計值並新增重新命名的國家變項

.

.

轉換變項型態

as.factor():將國家從字串轉換成因子
as.numeric():將學生性別、家中藏書量、母親教育程度、家中擁有物從因子轉換成數值

.

以性別估計值來分類前25%、50%、後25%

計算學生性別估計值25%與75%的數值,分別是10.310與 20.575

.

在新資料框中新增Genderlevel變項,輸入學生性別估計值的最低數值25%數值75%數值最高數值作為分類基準,命名各數值區間的名稱,分別為後面 25%中間 50%前面 25%

.

以地圖方式呈現迴歸分析結果

載入maptools與RColorBrewer套件

library("maptools")
library("RColorBrewer")

讀取world.shp

.

合併world.shp與新資料框

.

設定顏色漸層

.

繪製學生性別估計值

.

前面25%國家分別是德國(DEU)、紐西蘭(NZL)、義大利(ITA)、日本(JPN)

後面 25%國家分別是馬來西亞(MYS)、印尼(IDN)、芬蘭(FIN)、美國(USA)

繪製家中藏書量估計值

.

法國(FRA)的顏色最深,表示該國的家中藏書量估計值最高;印尼(IDN)的顏色最淺,表示該國的家中藏書量估計值最低

相較於大部分的歐美與紐澳國家,亞洲國家的顏色幾乎呈現淺色

繪製媽媽教育程度估計值

.

法國(FRA)的顏色最深,表示該國的母親教育程度估計值最高;臺灣(TAP)的顏色最淺,表示該國的母親教育程度估計值最低

相較於其它地區的國家,歐洲國家的顏色多呈現深色

繪製家中擁有物估計值

.

臺灣(TAP)的顏色最深,表示該國的家中擁有物估計值最高;芬蘭(FIN)顏色最淺,表示該國的家中擁有物估計值最低

相較於其它地區的國家,臺灣與日本的顏色多呈現深色

綜合比較

  • 北美國家的家中藏書量每增加一個單位,數學成績就會增加一分的情況優於其母親教育程度家中擁有物每增加一個單位,數學成績就會增加一分的情況
  • 歐洲國家的家中藏書量母親教育程度每增加一個單位,數學成績就會增加一分的情況優於其家中擁有物每增加一個單位,數學成績就會增加一分的情況
  • 臺灣與日本的家中擁有物每增加一個單位,數學成績就會增加一分的情況優於其家中藏書量母親教育程度每增加一個單位,數學成績就會增加一分的情況
  • 其它亞洲國家的家中藏書量母親教育程度家中擁有物每增加一個單位,數學成績就會增加一分的情況較不優於臺灣與日本的情況
  • 紐澳地區的家中藏書量每增加一個單位,數學成績就會增加一分的情況優於其母親教育程度家中擁有物每增加一個單位,數學成績就會增加一分的情況