Item Response Warehouse(IRW;項目反應資料倉儲)

一個免費、開放、經過統一格式化的項目反應資料集合,服務於心理計量學與測量研究。

閱讀論文 (開放取用)


IRW 存在的意義

研究測量問題的學者——無論在教育學、心理學還是相關領域——都需要真實資料來檢驗與比較他們的方法。這樣的資料其實早已大量存在,但它們分散在眾多研究中、儲存格式各異,並且常常因為文件不清楚或授權不明確而難以重複使用。

這是一個廣為人知的問題。其他學科透過建立共享的、標準化的資料資源解決了這個問題。在電腦科學領域,帶標註的圖像集合 ImageNet 為研究者提供了共同的基準,推動了人工智慧的快速發展。遺傳學與神經科學也為各自的資料建立了類似的共享資源。

Item Response Warehouse(IRW)為項目反應資料做了同樣的事。它彙集了數百個既有資料集,將它們統一轉換為同一種通用格式——如此一來,在某個資料集上驗證過的方法,就能輕易地在數百個其他資料集上進行檢驗。

IRW 包含哪些內容

IRW 包含數百個資料集(稱為「表」),每個資料集都是一組個別反應紀錄。每當某個人(或其他單位)對某個項目(或其他測量探針)作出反應時,就會產生一筆反應紀錄。例如:

  • 學生在教育與能力測驗中的作答
  • 測量人格或態度的調查項目
  • 人類評分者給出的評分
  • 任何其他涉及對一組測量探針重複作出反應的情境

關於 IRW 中的每一個資料集,以下兩點始終成立:

  • 開放。 每個資料集都獲得可供重複使用的授權。其來源均有文件記錄,將其轉換為 IRW 格式所使用的程式碼也是公開的。
  • 統一格式化。 每個資料集都被轉換為相同的簡單結構(詳見下文),使得同一套分析程式碼可以在眾多資料集上執行,幾乎不需要修改。

各資料集在規模上差異很大(從數百筆反應紀錄到數百萬筆不等),在反應類型上也各不相同(是/否類項目、多類別評分、部分給分等)。每個資料集還附帶預先計算好的中繼資料——參與者人數、項目數量、反應密度、學科領域及其他描述性標籤——使研究者無需先下載並處理全部資料,即可找到相關資料集。

資料標準

網格示意圖:展示每筆反應皆位於一個 id 與一個 item 的交會點上。

每個 IRW 資料集都被轉換為長格式:每列對應一筆反應紀錄。每列至少包含三項資訊:

欄位 意義
id 誰(或什麼)作出了該反應——通常是一個人
item 哪個測量探針引發了該反應——通常是一道題目或一項任務
resp 反應本身,以有序分數的形式儲存

範例:

id item resp rt cov_age rater
1 Q1 1 2.3 26 a
1 Q2 0 1.8 26 a
2 Q1 1 2.1 31 b
2 Q2 1 2.5 31 b

當某個資料集包含額外資訊——例如反應時間、評分者身分、年齡等共變數——這些資訊會儲存在額外的、命名方式一致的欄位中。這一種簡單結構涵蓋了極為廣泛的測量情境,這也正是能夠只撰寫一次分析程式碼、便可套用於整個資料倉儲的原因。

該標準的完整技術規範可在 itemresponsewarehouse.org/standard.html 查閱。此外還有更專門的標準,分別針對項目文字、兩兩競爭資料以及名義(無序類別)反應資料。

如何使用

取得 IRW 資料有三種方式,可依你希望自動化的程度來選擇。

1. 在網頁瀏覽器中瀏覽 直接在 IRW 資料瀏覽器 中探索資料集及其中繼資料——無需帳號。若要下載完整資料集,則需要一個免費的 Redivis 帳號,因為該平台是承載底層資料的平台。

2. 使用 irw 套件(建議) irw 套件同時提供 RPython 版本,提供了簡單的函式用於尋找、篩選與下載資料。

# R
devtools::install_github("itemresponsewarehouse/Rpkg")
library(irw)

irw_info()                     # overview of the IRW
irw_list_tables()              # list all available tables
irw_filter(var = "rt")         # find tables that include response times
df <- irw_fetch("4thgrade_math_sirt")   # download one table
# Python
# pip install "git+https://github.com/itemresponsewarehouse/Python-pkg.git"
import irw

irw.info()
irw.list_tables()
irw.filter(var="rt")
df = irw.fetch("4thgrade_math_sirt")

首次使用該套件時,系統會要求你使用免費的 Redivis 帳號登入。此後,只需一行程式碼即可將任意資料集直接下載到 R 或 Python 中。此時,資料便已可以使用標準軟體進行分析——例如項目反應理論或因素分析相關套件。

3. 直接使用 Redivis 的用戶端函式庫 對於更底層的工作流程,或不使用 R/Python 的情境,也可以透過 Redivis 自身提供的 R 與 Python 用戶端函式庫存取資料。詳見 入門指南

不僅僅是下載資料

IRW 專案還包括:

  • 一套不斷增長的 範例集(vignettes)——展示如何將經典及新興的測量方法同時應用於多個 IRW 資料集的實例
  • 訓練資源與練習題,用於以真實資料教授心理計量學
  • 資料貢獻流程,供希望將自己的資料集加入該資料倉儲的研究者使用

了解更多

如果你在工作中使用了 IRW 的資料,請引用原始資料(我們已提供相應的引用功能)。同時,我們也非常歡迎你引用上面提到的介紹性論文。


有問題、意見回饋,或想貢獻一個資料集?請造訪 聯絡我們頁面,或在 GitHub 上提交 issue。