آزمون تی طبقه ای در SAS و R – راهنمای کابردی

۴۶۶ بازدید
آخرین به‌روزرسانی: ۲۳ خرداد ۱۴۰۲
زمان مطالعه: ۱۰ دقیقه
دانلود PDF مقاله
آزمون تی طبقه ای در SAS و R – راهنمای کابردیآزمون تی طبقه ای در SAS و R – راهنمای کابردی

آزمون تی طبقه ای یک روش تجزیه و تحلیل است که اغلب نادیده گرفته می شود در حالیکه یک آزمون مقایسه قوی را ارائه می‌دهد. امروزه، با ظهور قدرت محاسباتی بیشتر و سرعت پردازش سریعتر، آزمون‌های دیگری به جای آزمون تی طبقه ای مورد استفاده قرار می‌گیرد برای مثال «تحلیل کوواریانس» (ANCOVA) یکی از روش‌های جایگزین برای آزمون t طبقه ای است، که خروجی مشابه نیز دارد.

997696

در این نوشتار سعی داریم با تکیه بر روند انجام عملیات آزمون t طبقه ای در SAS، دقت محاسباتی و خصوصیات آزمون تی طبقه‌ ای را بازگو کرده و نتایج حاصل را با «انکوا» (ANCOVA) یا تحلیل کوواریانس مقایسه کنیم. به این منظور بهتر است، نوشتارهای دیگر مجله فرادرس مانند تحلیل کوواریانس ANCOVA در SPSS — راهنمای کاربردی و آزمون تی (T Test) در R --- راهنمای کاربردی را مطالعه کنید. همچنین خواندن مطالب آزمون های فرض و استنباط آماری — مفاهیم و اصطلاحات و آزمون فرض میانگین جامعه در آمار — به زبان ساده نیز خالی از لطف نیست.

آزمون تی طبقه ای

آزمون تی برای مقایسه میانگین یک جامعه نرمال با مقدار ثابت یا انجام آزمون فرض آماری برای اختلاف میانگین در دو جامعه نرمال مورد استفاده قرار می‌گیرد. البته فرض بر این است که واریانس هر دو جامعه برابر ولی نامشخص است. هر چند اصلاحی نیز برای زمانی که واریانس دو جامعه اختلاف داشته باشند، مطرح شده و آماره آزمون تی براساس برآورد دیگری از واریانس صورت می‌گیرد. شرط استفاده از آزمون تی و آماره آن، مستقل بودن هر دو جامعه و تصادفی بودن نمونه‌ها است.

اما رویکرد دیگری که برای اجرای آزمون تی وجود دارد، تهیه نمونه‌ها براساس یک طرح نمونه‌گیری طبقه‌ای است. در این صورت نمونه‌ها مستقل از دو جامعه، طی یک «نمونه‌گیری طبقه‌ای» (Stratified) جمع‌آوری شده‌اند. در این صورت برای محاسبه میانگین و واریانس آماره آزمون تی، باید تغییراتی صورت گیرد. البته توجه داشته باشید که آماره حاصل باز هم دارای توزیع تی بوده و برای تصمیم نسبت به رد یا تایید فرض صفر به جدول‌های این توزیع مراجعه می‌شود.

از آنجایی که طرح نمونه‌گیری طبقه‌ای به کار رفته و ممکن است رابطه‌ای بین طبقه‌ها وجود داشته باشد، در این آزمون یک متغیر همبسته با طبقه به صورت مزاحم وجود دارد که بوسیله محاسبات صورت گرفته، سعی داریم اثر آن را از بین ببریم. به همین علت گاهی آزمون تی طبقه ای را مشابه با تحلیل و «آنالیز کوواریانس» (ANCOVA) یا Analysis of Covariance می‌دانند.

آماره آزمون تی طبقه ای

آماره آزمون مقایسه میانگین بین دو جامعه (مثلا گروه کنترل و گروه آزمایش) طبق طرح نمونه‌گیری طبقه‌ای به صورت زیر است.

T=k=1Kwkdk(wk2σ^k2)1/2\large T = \dfrac{ \sum_{k = 1}^K w_k d_k }{ \left( \sum w^2_k \widehat{ \sigma}^2_k \right)^{1/2}}

آماره آزمون t طبقه ‌ای

در صورتی که K = 2 باشد، تعداد طبقه‌ها ۲ در نظر گرفته می‌شود. البته توجه داشته باشید که در آزمون تی، همیشه تعداد گروه‌ها یا تیمارها برابر با ۲ است. با تغییر طبقه‌ها به مقدار K = 4 تعداد میانگین و پارامترهای دیگر آزمون تی طبقه‌ ای برابر با ۸ خواهد بود. به این ترتیب چهار طبقه و دو گروه مورد بررسی قرار می‌گیرند.

این آماره آزمون به صورت مجانبی دارای توزیع t بوده و با توجه به توزیع آن برای انجام آزمون فرض آماری و همچنین ایجاد فاصله اطمینان به کار می‌رود. البته با افزایش تعداد نمونه‌ها می‌توان توزیع آماره را با توزیع نرمال استاندارد تقریب زد و فاصله اطمینان را محاسبه نمود.

در ادامه پارامترهای محاسباتی برای آماره T‌معرفی و شیوه محاسبه آن‌ها یادآوری شده است.

wk=n1kn0kk=1K(n1kn0kn1k+n0k)\large w_k = \dfrac{n_{1k} n_{0k}}{\sum_{k = 1}^K \left( \dfrac{n_{1k} n_{0k} }{n_{1k} + n_{0k}} \right) }

محاسبه وزن‌ها برای هر طبقه

Tk=dkσ^k=(x1kx0k)(n1k+n0kn1kn0k)1/2sk\large T_k = \dfrac{d_k}{ \widehat{\sigma}_k} = \dfrac{\left( \overline{x}_{1k} - \overline{x}_{0k} \right) }{ \left( \dfrac{n_{1k} + n_{0k}}{n_{1k} n_{0k}} \right)^{1/2} s_k}

محاسبه آماره t برای هر طبقه

از طرفی برآورد واریانس آمیخته sks_k نیز به شکل زیر انجام خواهد شد.

sk2=(n1k+n0kn1kn0k)(n1k1)s1k2+(n0k1)s0k2n1k+n0k2\large s^2_k = \left( \dfrac{n_{1k} + n_{0k}}{n_{1k}n_{0k}} \right) \dfrac{(n_{1k} - 1) s^2_{1k} + (n_{0k}-1) s^2_{0k}}{n_{1k} + n_{0k} - 2}

در رابطه‌های بالا، پارامترها به صورت زیر هستند.

  • n1kn_{1k}: تعداد مشاهدات در گروه آزمون یا ۱ و طبقه kام
  • n0kn_{0k}: تعداد مشاهدات در گروه کنترل یا گروه صفر و طبقه kام
  • x1k\overline{x}_{1k}: میانگین مشاهدات در گروه آزمون یا ۱ و طبقه kام

x1k=1n1ki=1n1kx1ik\large \overline{x}_{1k} = \dfrac{1}{n_{1k}} \sum_{i = 1}^{n_{1k}} x_{1ik}

  • x0k\overline{x}_{0k}: میانگین مشاهدات در گروه آزمون کنترل یا 0 و طبقه kام

x0k=1n0ki=1n0kx0ik\large \overline{x}_{0k} = \dfrac{1}{n_{0k}} \sum_{i = 1}^{n_{0k}} x_{0ik}

  • s1k2s^2_{1k}: واریانس مشاهدات در گروه آزمون یا ۱ و طبقه kام
  • s0k2s^2_{0k}: واریانس مشاهدات در گروه آزمون کنترل یا 0 و طبقه kام
  • sk2s^2_k: واریانس آمیخته مشاهدات در طبقه kام

به این ترتیب و با استفاده از وزن‌ها و میانگین و واریانس طبقه‌ها، اثر تیمار به صورت زیر محاسبه می‌شود.

 Treatment Effect dw=k=1Kwkdk\large \text{ Treatment Effect } d_w =\sum _{k = 1}^K w_k d_k

همچنین فاصله اطمینان برای dwd_w نیز به شکل زیر خواهد بود.

$$ \large \text{ 95 percent Confidence interval for d_w : } d_w \pm Z_{0.025} \sqrt{\sum_{k = 1}^K w^2_k \widehat{\sigma}^2_k } $$

پیاده سازی آزمون تی طبقه ای در SAS

طبق فرمول و رابطه‌های گفته شده در قسمت قبل، در ادامه به کدنویسی و ایجاد یک ماکرو در SAS برای انجام محاسبات مربوط به آزمون تی طبقه ای می‌پردازیم. تابع یا ماکرو مورد نظر با نام (STRAT_T) برای استخراج آزمون t طبقه ای مطابق زیر است. فرض بر این است که متغیرهای مورد نظر، قبلاً به یک مجموعه داده واحد به نام STRATA تبدیل شده‌اند.

در بخش بعدی وزن‌ها برای آزمون تی طبقه ای مورد محاسبه قرار گرفته و میانگین برای هر یک از گروه‌ها و طبقه‌ها ساخته می‌شود.

همچنین یک جدول آنالیز واریانس-کوواریانس نیز براساس طبقه و گروه‌ها ساخته شده و نتایج هر دو نوع تحلیل، در قسمت بعدی با هم مقایسه شده‌اند.

نتایج حاصل از اجرای کد

به کمک شبیه‌سازی و ایجاد یک مجموعه داده، خروجی به صورت زیر در خواهد آمد. خروجی قسمت برنامه PROC REPORT به صورت زیر است.

همچنین جدول خروجی مربوط به وزن‌ها و میانگین تیمار و طبقه‌ها، همچنین واریانس‌ها به صورت زیر است. از طرفی مقایسه «واریانس ساده اختلاف میانگین‌» (Variance of Difference) و «واریانس وزنی اختلاف میانگین» (Variance of weighted Difference) برای برآوردگر میانگین اختلاف در جدول زیر دیده می‌شود.

Variance of weighted Difference

Variance of 

Difference

Weighted Treatment 

Difference

Treatment 

Difference

WeightsTreatB (N)

TreatA (N)

STRATA
18.55332374.677123-4.524638-18.211670.248458101
12.36387149.150202-4.164596-16.555560.25155992
13.50777254.368783-1.976812-7.9566670.248458103
16.16996564.2806-13.79526-13.759260.25155994

محدودیت‌ها و مقایسه‌ها

آنچه در اجرای آزمون تی مهم محسوب می‌شود، نرمال بودن جامعه آماری است. آنچه به عنوان آماره آزمون و توزیع آن شناختیم با فرض نرمال بودن جامعه آماری تعیین شده بود. در نتیجه سنجش و آزمون نرمال بودن داده‌ها نیز از اهمیت زیادی برخوردار است که در مطالب دیگر فرادرس به آن‌ها اشاره خواهیم داشت.

با استفاده از برخی داده‌های شبیه سازی شده، می‌توان تخمین‌ها و خطاهای استاندارد را با توجه به تعداد مشاهدات رسم و مورد تحلیل قرار داد. به منظور تحلیل نتایج از آزمون t طبقه بندی شده در برابر روش ANCOVA، در کد قبلی از  شبیه‌سازی و تابع RANUNI به عنوان منبع تولید چندین متغیر تصادفی استفاده شده است. در جدول زیر برآورد و خطاهای استاندارد به ترتیب با استفاده از آزمون t طبقه ای و ANCOVA در ادامه دیده می‌شود.

ANCOVAStratified t-testN
SEESTIMATESEESTIMATE
3.834-14.12723.891434-14.127240
6.157-8.89596.221243-8.895980
4.072-5.601744.093138-5.60174160
2.386-3.527422.391905-3.52742320
1.33-2.221211.332119-2.22121640
0.723-1.398690.723148-1.398691280
0.386-0.880760.386529-0.880762560
0.205-0.554610.204532-0.554615120
0.107-0.349240.107491-0.3492410240
0.056-0.219920.056222-0.2199220480
0.029-0.138480.029307-0.1384840960

از مقایسه مقادیر برآورد یا تخمین‌ها (Estimate) می‌توان فهمید که هیچ تفاوتی بین این دو رویکرد (t test stratified) و آنکوا (ANOVA) وجود ندارد. با این حال، با نگاهی به خطاهای استاندارد، تفاوت کمی وجود دارد که در آن به ازای N <10000 نیز این اختلاف از بین می‌رود زیرا در این حالت «قانون اعداد بزرگ» (LLN) یا «قضیه حد مرکزی» (CLT) صدق می‌کند.

پیاده سازی آزمون تی طبقه ای در R

کدی که در ادامه مشاهده می‌کنید، نحوه پیاده‌سازی آزمون تی طبقه ای را در زبان برنامه نویسی R، نشان می‌دهد. در ابتدا کتابخانه یا بسته‌های plyr و dplyr بارگذاری شده‌اند تا بتوان از تابع ddply به منظور تفکیک داده‌ها به طبقه‌ها، استفاده کرد.

سپس انجام محاسبات طبق فرمول‌های گفته شده، صورت گرفته و نتیجه به عنوان خروجی ظاهر می‌گردد. البته وجود طبقه strata در خلال برنامه با تابع is.null مورد بررسی قرار می‌گیرد. اگر طبقه در مجموعه داده وجود نداشته باشد، آزمون تی معمولی با جایگزینی treatment با strata صورت خواهد گرفت. در انتها نیز با یک مثال، داده‌هایی به صورت تصادفی تولید شده و تابع را برای آن مجموعه فراخوانی کرده‌ایم.

محاسباتی که در این بخش انجام شده است، دقیقا مطابق با فرمول‌های ارائه شده است. فقط توجه داشته باشید که در کد گفته شده، در صورتی که مجموعه داده شامل طبقه نباشد، گروه‌ها (Treatment) را جایگزین طبقه (Strata) کرده و همان محاسبات را دنبال می‌کنیم. این کار باعث کاهش اندازه کد و در عین حال عمومیت بخشیدن به آزمون تی می‌شود. به این ترتیب هم در حالت طبقه ای و هم بدون طبقه می‌توان از کد یکسانی در  R استفاده کرده و  نتایج مناسب را بدست آورد.

نکته: مجموعه داده‌ای که به تابع test_strat داده می‌شود باید از نوع dataframe باشد. در غیر اینصورت برنامه با پیغام Input is not a dataframe, or does not have the correct column names کاربر را مطلع می‌سازد.

به مثال‌های زیر توجه کنید. در اولین حالت (With strata) با در نظر گرفتن طبقه‌ها طبق کد گفته شده، خروجی محاسبه شده است.

در بخش دوم با حذف strata از مجموعه داده با دستور select، آزمون تی مستقل صورت گرفته است. در ستون stratified نیز مقدار FALSE نشانگر بی طبقه بودن آزمون تی است. در انتها نیز با تبدیل مجموعه داده به یک ماتریس، تابع test_strat، پیغام خطا را نشان داده است.

پیش‌فرض‌های آزمون تی طبقه ای

ما در این متن روش آزمون تی طبقه ای را بوسیله یک ماکرو کامل به زبان برنامه‌نویسی SAS و همچنین کدهایی به زبان R، ارائه کرده و  نتایج را از تجزیه و تحلیل دریافت و یک جدول اساسی برای نمایش خروجی ایجاد کردیم. البته به یاد داشته باشید قبل از به کارگیری آزمون، باید داده‌های مورد تجزیه و تحلیل را بررسی کنیم تا از نرمال بودن آن‌ها اطمینان حاصل کنیم.

در روشهای آمار پارامتری فرض بر این است که داده‌ها دارای توزیع شناخته شده و معینی هستند. در بیشتر موارد در آمار کلاسیک این توزیع برای داده‌ها، توزیع گاوسی یا نرمال در نظر گرفته می‌شود. ولی اگر توزیع این داده‌ها گاوسی یا نرمال نباشد، پیش‌فرض‌های مربوط به آزمون‌ها و تحلیل‌های آمار پارامتری (Parametric Methods) و کلاسیک نقض شده و باید از روش‌های آماری «غیرپارامتری» یا «ناپارامتری» (Non Parametric Methods) استفاده کرد. ولی سوال در اینجا این است که چگونه از نرمال بودن داده‌ها مطلع شویم؟

خوشبختانه روش‌های زیادی به منظور سنجش و آزمودن نرمال بودن داده (Normality Test) وجود دارد که می‌توان از آنها استفاده کرد. البته از آنجایی که در این بین از آزمون آماری و مقدار احتمال (P-value) صحبت به میان می‌آید بهتر است در مورد هر یک از این اصطلاحات در نوشتارهای آزمون های فرض و استنباط آماری — مفاهیم و اصطلاحات و مقدار احتمال (p-Value) — معیاری ساده برای انجام آزمون فرض آماری اطلاعاتی کسب کنید تا مفاهیم و روش‌های نرمالیتی و سنجش توزیع داده‌ها را بهتر درک کنید. البته در اینجا از معرفی این تکنیک‌ها صرف نظر کرده و خواننده را به لینک‌ها ارائه شده، ارجاع می‌دهیم.

خلاصه و جمع‌بندی

در این نوشتار با مفهوم آزمون تی طبقه ای آشنا شده و مزایای استفاده از آن نسبت به دیگر آزمون‌های میانگین برای دو جامعه مستقل را بازگو کردیم. البته شاید بتوان آزمون تحلیل کوواریانس را به شکلی مشابه آزمون t طبقه ای در نظر گرفت ولی از آنجا که بار محاسباتی در آزمون و تجزیه و تحلیل کوواریانس بسیار بیشتر از آزمون t طبقه ای است در مواردی که دسترسی به دستگاه‌ها یا نرم‌افزارهای محاسبات آماری وجود ندارد، آزمون تی طبقه ای کاربردی و در دسترس است. به همین منظور آماره آزمون و نحوه اجرای آن را در نرم‌افزار محاسباتی SAS و R مرور کرده و برنامه مورد نیاز برای اجرای آن را در این متن فرا گرفتیم.

بر اساس رای ۰ نفر
آیا این مطلب برای شما مفید بود؟
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
lexjansenمجله فرادرس
دانلود PDF مقاله
نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *