نحوه محاسبه رگرسیون ترتیبی (Ordinal Regression)در نرم افزارR

زمانیکه متغیر وابسته از جنس ترتیبی باشد کاربرد رگرسیون ترتیبی مفهوم پیدا می کند این رگرسیون که از خانواده رگرسیون های لجستیک است نسبت به روش هایی چون تابع ممیزی دارای مزیت هایی به شرح زیر است:
• از آنجا که این روش به نرمال بودن توزیع و همسانی واریانس ها در هر گروه حساسیت ندارد لذا کاربرد آنها در برآورد تغییرات متغیر وابسته قدرتمند تر از روش هایی چون تابع ممیزی است.
• توزیع خطاها الزاما نباید از توزیع نرمال پیروی کند.
• خود متغیر وابسته نیز با توجه به ماهیت گسسته بودنش نیازمند توزیع نرمال نیست.
• مقیاس های متغیر های مستقل موجود در تابع می تواند از یکدیگر متفاوت باشد.
• این روش از توانایی مدیریت اثرات غیر خطی در تخمین پارامتر ها برخوردار است.
تنها نقطه ضعف این روش نسبت به سایر روش هایی با متغیر گسسته، این است که حجم نمونه مورد نیاز در این روش تحلیل چند متغیره 50 نفر به ازای هر متغیر مستقل وارد شده در مدل است در حالیکه این تعداد برای روش هایی چون DA این تعداد 20 نفر است. فرق این روش با روش هایی چون Multinomial logistic این است که بین طبقات اولویت بندی دارد و نسبت به روشی چون Ordinal probit در تفسیر ضرایب متفاوت است. به طور کلی روش های تحلیل چند متغیره Multinomial logistic، Ordinal probit و DA با این روش قرابت هایی را دارند. لیکن نقطه اصلی تفاوت این روش با این روش ها در نوع برخورد با متغیر وابسته است.
به عنوان مثال اگر یک شرکت تولید کننده نوشیدنی بخواهد مطالعه کند چه متغیر هایی بر اندازه بسته بندی نوشیدنی موثر است تا بتواند تلیغات هدفمند خود را روی هر محصول در فروشگاه های مختلف انجام دهد، آنگاه باید از روش رگرسیون ترتیبی استفاده کند تا مشخص شود کدام متغیر های مستقل توانایی تفکیک مشتریان سه نوع بسته بندی این شرکت را دارد. یا اگر متغیر وابسته تمایل به خرید در بین مشتریان محصولات یک شرکت باشد و بخواهند متغیر های تفکیک کننده این پنج گروه را جهت پیش بینی پنج طبقه متغیر وابسته پیدا کنند و بر اساس ضرایب رتبه بندی کنند باید از رگرسیون ترتیبی استفاده شود.
برای حل یک نمونه تمرین با نرم افزار R در نظر گرفتیم یک موسسه ارائه دهنده خدمات آموزشی در راستای ترسیم چشم انداز آموزش های مستمر خود میزان تمایل افراد بالای 30 سال یک جامعه را با سه مقدار کم، متوسط و زیاد اندازه گیری نموده است. وضعیت سه متغیر سطح سواد والدین، نوع اشتغال(دولتی یا آزاد) و معدل دیپلم هر فرد به عنوان متغیر های مستقل در دسترس می باشد. سوال اصلی این است که چگونه می توان از این متغیر های مستقل برای پیش بینی میزان تمایل افراد استفاده کرد یا خیر؟ به دلیل اینکه متغیر وابسته که میزان تمایل است به صورت گسسته است استفاده از روش های رگرسیونی مبتنی بر حداقل مربعات در اینجا مفهومی ندارد لذا باید از روش های لجیت استفاده کرد که با توجه به ماهیت ترتیبی متغیر وابسته از رگرسیون ترتیبی استفاده می شود. ابتدا در گام اول به روش زیر باید داده های موجود را برای نرم افزار تعریف کنیم. لذا در کنسول نرم افزار کد زیر را تایپ می کنیم تا هم داده ها را وارد کرده باشیم و هم نام متغیر ها را مشاهده کنیم.


testdata attach(testdata)
names(testdata)

حال با زدن دستور ()table و تایپ نام متغیر در داخل پرانتز می توان طبقات هر متغیر را مشاهده نمود. سپس با دستور زیر می توان آماره توصیفی متغیر های تحقیق را مشاهده نمود.

summary(نام یکی از متغیرهای وارد شده)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.900 2.720 2.879 2.879 3.275 4.000
sd(نام یکی از متغیرهای وارد شده)
[1] 0.3979409


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

xtabs(~ اولین متغیر مستقل + متغیر وابسته)

مثلا نتیجه آن مانند زیر خواهد شد:

[Image]

 

در این مرحله می توان دستور اصلی اجرای مدل را داد. باید توجه داشت که کتابخانه R فاقد دستور زیر است و باید بتدا از سایت آن کتابخانه Design نصب شود. لذا در ابتدای دستور این کار را انجام داده ایم:

 

library(Design)
ddistoptions(datadist='ddist')
ologitprint(ologit)


خروجی این عملیات به شرح زیر خواهد بود:

Logistic Regression Model

lrm(formula=apply~pared+public+gpa, data = mydata, na.action = na.pass)

Frequencies of Responses

[Image]

در بخش اول خروجی می توان اطلاعات جامعی از تعداد افرادی که در هر گروه متغیر وابسته قرار می گیرند و همچنین آمار های توصیفی به دست می آید. مقدار 18/24 تابع chi-square likelihood ratio نشان از برازش کلی مدل لجیت و اعتبار علمی آن دارد. در بخشی از خروجی که با علامت کوچکتر و بزرگتر مشخص شده است می توان مرز تفکیک بین گروه ها را مشخص کرد. در مقابل متغیر های مستقل نقش پیش بینی کننده انها آمده است و همچنین آماره والد به دنبال تعیین معنی داری هر ضریب است. بر اساس جدول فوق دو متغیر مستقل دارای ضریب والد معنی دار هستند. به عنوان مثال ضریب 61/0 متغیر معدل که معنی دار نیز است نشان می دهد که با افزایش یک واحدی معدل، ضریب ارتقا از یک طبقه به طبقه بالاتر به 61/0 افزایش می یابد. یا در مورد سطح تحصیلات والدین که ضریب 04/1 است با افزایش یک سطح سواد والدین می توان 04/1 ضریب برای حرکت از یک طبقه تمایل به طبقه بعدی قائل شد. متغیر نوع اشتغال نیز اثر معنی داری به لحاظ آماری از خود نشان نمی دهد.

برای محاسبه نسبت های Odd Ratio که نسبت های برتری می باشند، باید دستور زیر را وارد کرد تا بتوان این نسبت ها را مشاهده نمود. summary(ologit, gpa=c(3,4), hours=c(10,20)). که نتایج آن به شرح زیر خواهد شد. تفسیر ضرایب odds مانند تفسیر احتمال است. مثلا یک واحد در افزایش معدل مثلا 8/1 برابر شانس فرد برای قرار گیری در گروه بالاتر را افزایش می دهد.

[Image]

استفاده از ماکروی زیر اطلاعات با جزئیات بیشتری درباره نسبت های برتری ارائه می دهد.

[Image]

خروجی این دستور به شرح زیر خواهد شد.

[Image]

همچنین برای تفکیک گروه ها می توان دستور زیر را اجرا کرد.

plot(s, which=1:3, pch=1:3, xlab='logit', main=' ', xlim=c(-2.8,.8))

 

[Image]


در این مقاله هدف ارائه تکنیک رگرسیون ترتیبی در نرم افزار R بود و جهت کسب اطلاعات بیشتر و توسعه دانش در حیطه رگرسیون های ترتیبی باید از رفرنس زیر استفاده شود.

• Frank E. Harrell, Jr. Regression Modeling Strategies: With Applications to Linear Models, Logistic Regression and Survival Analysis. Springer, New York, 2001. [335-337]


بازگشت به آموزش نرم افزار R




نظرات



افزودن نظر