انبار پاسخ به سؤالها (Item Response Warehouse, IRW)
مجموعهای رایگان و آزاد از دادههای پاسخ به سؤال (item response) هماهنگشده، برای پژوهشهای روانسنجی (psychometrics) و اندازهگیری.
مقاله را بخوانید (دسترسی آزاد)
چرا IRW وجود دارد
پژوهشگرانی که اندازهگیری را مطالعه میکنند — در آموزش، روانشناسی و حوزههای مرتبط — برای آزمودن و مقایسه روشهای خود به دادههای واقعی نیاز دارند. این دادهها از قبل به مقدار زیاد وجود دارند. اما در میان پژوهشهای بسیاری پراکندهاند، در قالبهای بسیار متفاوتی ذخیره شدهاند، و اغلب به دلیل مستندسازی یا مجوز نامشخص، بازاستفاده از آنها دشوار است.
این مشکلی شناختهشده است. حوزههای دیگر با ساختن منابع دادهای مشترک و استانداردشده آن را حل کردهاند. در علوم رایانه، مجموعه تصاویر برچسبگذاریشده ImageNet به پژوهشگران یک معیار سنجش (benchmark) مشترک داد و به پیشرفت سریع در هوش مصنوعی کمک کرد. ژنتیک و علوم اعصاب نیز منابع مشترک مشابهی برای دادههای خود ساختهاند.
انبار پاسخ به سؤالها (IRW) همین کار را برای دادههای پاسخ به سؤال انجام میدهد. این پروژه صدها مجموعهداده موجود را گرد هم میآورد و آنها را به یک قالب مشترک تبدیل میکند — بهطوریکه روشی که روی یک مجموعهداده آزموده شده، بهآسانی روی صدها مجموعهداده دیگر نیز قابل آزمودن باشد.
در IRW چه چیزی وجود دارد
IRW شامل صدها مجموعهداده (“جدول”) است که هر یک مجموعهای از پاسخهای فردی است. هر بار که شخصی (یا واحدی دیگر) به یک سؤال (item) (یا آزمون دیگری) پاسخ میدهد، یک پاسخ تولید میشود. نمونهها عبارتاند از:
- پاسخهای دانشآموزان در آزمونهای آموزشی و توانایی
- سؤالهای پرسشنامهای که شخصیت یا نگرشها را میسنجند
- نمرههایی که ارزیابهای انسانی میدهند
- هر موقعیت دیگری که شامل پاسخهای تکراری به مجموعهای از ابزارهای اندازهگیری باشد
دو ویژگی دربارهی هر مجموعهداده در IRW صادق است:
- آزاد. هر مجموعهداده برای بازاستفاده مجوز دارد. منشأ آن مستند شده، و کدی که برای تبدیل آن به قالب IRW استفاده شده، عمومی است.
- هماهنگشده (Harmonized). هر مجموعهداده به همان ساختار ساده (که در ادامه توضیح داده میشود) تبدیل میشود، بهطوریکه همان کد تحلیلی بتواند با تغییرات کم یا بدون تغییر، روی مجموعهدادههای بسیاری اجرا شود.
مجموعهدادهها از نظر اندازه (از چند صد پاسخ تا میلیونها پاسخ) و از نظر نوع پاسخ (سؤالهای بله/خیر، رتبهبندیهای چندگانه، نمرههای جزئی و موارد دیگر) بسیار متفاوتاند. هر مجموعهداده همچنین همراه با فرادادههای ازپیشمحاسبهشده میآید — تعداد شرکتکنندگان، تعداد سؤالها، چگالی پاسخ، حوزهی موضوعی و دیگر برچسبهای توصیفی — تا پژوهشگران بتوانند مجموعهدادههای مرتبط را بدون نیاز به دانلود و پردازش همهی آنها پیدا کنند.
استاندارد داده
هر مجموعهدادهی IRW به قالب بلند (long format) تبدیل میشود: یک ردیف برای هر پاسخ. حداقل، هر ردیف شامل سه بخش اطلاعات است:
| ستون | معنا |
|---|---|
id |
چه کسی (یا چه چیزی) پاسخ را تولید کرده — معمولاً یک شخص |
item |
کدام ابزار اندازهگیری پاسخ را تولید کرده — معمولاً یک سؤال یا تکلیف |
resp |
خود پاسخ، که بهصورت یک نمرهی ترتیبی (ordinal) ذخیره میشود |
مثال:
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 در دسترس است. استانداردهای مرتبط و تخصصیتری نیز برای متن سؤال، دادههای مقایسهی دوتایی (pairwise) و پاسخهای اسمی (nominal، مقولههای بدون ترتیب) وجود دارد.
چگونه از آن استفاده کنیم
بسته به میزان خودکارسازی که میخواهید، سه راه برای دریافت دادههای IRW وجود دارد.
۱. مرور در مرورگر وب مجموعهدادهها و فرادادههای آنها را مستقیماً در مرورگر دادهی IRW کاوش کنید — نیازی به حساب کاربری نیست. دانلود یک مجموعهدادهی کامل به یک حساب رایگان Redivis نیاز دارد، زیرا این همان پلتفرمی است که دادههای زیربنایی را میزبانی میکند.
۲. از بستهی irw استفاده کنید (توصیهشده) بستهی irw، که هم برای R و هم برای Python در دسترس است، توابعی ساده برای یافتن، فیلتر کردن و دانلود داده ارائه میدهد.
# 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 دانلود میکند. از این پس، داده برای تحلیل با نرمافزارهای استاندارد آماده است — برای مثال بستههای نظریهی پاسخ به سؤال (item response theory) یا تحلیل عاملی.
۳. مستقیماً از کتابخانههای کلاینت Redivis استفاده کنید برای گردشکارهای سطح پایینتر یا خارج از R/Python، داده همچنین از طریق کتابخانههای کلاینت R و Python خود Redivis نیز در دسترس است. برای جزئیات، به راهنمای شروع کار مراجعه کنید.
فراتر از دانلود داده
پروژهی IRW همچنین شامل موارد زیر است:
- مجموعهای روبهرشد از نمونههای کاربردی (vignettes) — نمونههای تشریحشدهای که روشهای اندازهگیری کلاسیک و جدید را بهطور همزمان روی بسیاری از مجموعهدادههای IRW بهکار میگیرند
- منابع آموزشی و مجموعهتمرینها برای آموزش روانسنجی با دادههای واقعی
- یک فرایند مشارکت برای پژوهشگرانی که میخواهند مجموعهدادههای خود را به انبار داده اضافه کنند
بیشتر بدانید
- Domingue et al. (2025). An introduction to the Item Response Warehouse (IRW): A resource for enhancing data usage in psychometrics. Behavior Research Methods. doi:10.3758/s13428-025-02796-y
- Nadela, Lee, Jain, Gupta, Zhang & Domingue (2026). The Item Response Warehouse: What It Is, How to Use It, and Targets for Potential Improvements. Chinese/English Journal of Educational Measurement and Evaluation. doi:10.59863/CIJG4549
- وبسایت: itemresponsewarehouse.org
- کد: github.com/itemresponsewarehouse
اگر از دادههای IRW در کار خود استفاده میکنید، لطفاً به دادهی اصلی استناد دهید (امکانات لازم برای این کار را فراهم کردهایم). همچنین بسیار ارزشمند خواهد بود اگر به مقالهی معرفی بالا نیز استناد دهید.
سؤال، بازخورد دارید، یا میخواهید در یک مجموعهداده مشارکت کنید؟ به صفحهی تماس مراجعه کنید یا در GitHub یک issue باز کنید.