از متغیرهای طبقه ای نمی توان به راحتی به عنوان پیش بینی کننده در تحلیل رگرسیون چندگانه استفاده کرد. آنها باید به متغیرهای دوگانه تقسیم شوند که به عنوان “متغیرهای تصنعی” شناخته می شوند. این آموزش یک ابزار ساده برای ایجاد آنها ارائه می دهد.

  • داده های مثال
  • پیش نیازها و نصب
  • مثال i -متغیر طبقه ای عددی
  • مثال ii -متغیر طبقه ای رشته ای

داده های مثال

ما ابزار خود را در 2 مثال نشان می دهیم: یک متغیر عددی و یک رشته. هر دو متغیر در staff.sav هستند که بخشی از آن در زیر نشان داده شده است.

ما شما را تشویق می کنیم که این فایل داده را در SPSS بارگیری و باز کنید و مواردی را که ارائه می دهیم تکرار کنید.

پیش نیازها و نصب

ابزار ما به SPSS نسخه 24 یا بالاتر نیاز دارد. همچنین ، موارد ضروری SPSS Python 3 باید نصب شود (معمولاً این مورد در نسخه های اخیر SPSS وجود دارد).

برای بارگیری ابزار مورد نیاز ، روی SPSS_TUTORIALS_DUMMIFY.spe کلیک کنید. برای نصب آن ، به قسمت

Extensions        >>          Install local extension bundle 

مانند تصویر زیر بروید.

در گفتگویی که باز می شود ، به فایل بارگیری شده .spe بروید و آن را نصب کنید. سپس SPSS تأیید می کند که برنامه افزودنی درقسمت

Transform      >>         SPSS tutorials Create Dummy Variables 

باموفقیت نصب شده است

مثال i -متغیر طبقه ای عددی

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

نکته مهم ، توجه داشته باشید که وضعیت تاهل دارای 4 حالت (بدون متغیر ازدست رفته دست رفته) است. همانطور که بعداً توضیح خواهیم داد ، همیشه باید یک دسته را که به عنوان دسته مرجع شناخته می شود ، کنار بگذاریم. بنابراین 3 متغیر تصنعی برای نمایش 4 دسته خود ایجاد خواهیم کرد.

این کار را با رفتن به

Transform     >>         SPSS tutorials – Create Dummy Variables 

مانند شکل زیر انجام می دهیم

 بیایید اکنون گفتگوی ظاهر شده را پر کنیم.

3ما دسته اول (“هرگز ازدواج نکرده”) را به عنوان دسته مرجع خود انتخاب می کنیم. تکمیل این نتایج در دستور زیرآمده است. بیایید آن را اجرا کنیم.

*Create dummy variables for Marital Status with the first category as reference.

SPSS TUTORIALS DUMMIFY VARIABLES=marit
/OPTIONS NEWLABELS=LABLAB REFCAT=FIRST ACTION=RUN.

 

نتایج

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

اول توجه داشته باشید که اسم متغیرها برای متغیرهای تصنعی می شود اسم متغیر اصلی به اضافه یک پسوند عدد صحیح است. این پسوندها معمولاً با دسته هایی که نشان می دهند مطابقت ندارند.

 در عوض ، این دسته ها در برچسب های متغیر برای متغیرهای تصنعی ما یافت می شوند. در این مثال ، آنها بر اساس متغیر و ارزش برچسب در وضعیت تأهل هستند.

 در مرحله بعد ، توجه داشته باشید که برخی از دسته ها به دلایل زیر حذف شدند:

  • هیچ متغیری تصنعی برای “” Never Married ایجاد نشده است زیرا ما آن را به عنوان رده مرجع خود انتخاب کرده ایم.
  • هیچ متغیر تصنعی برای “در حال طلاق” ایجاد نشده است زیرا در واقع در مجموعه داده ما وجود ندارد.
  • هیچ متغیری تصنعی برای “(ناشناخته)” ایجاد نشده است زیرا این مقدار از دست رفته کاربر است.

 حال سوال اصلی این است: آیا این نتایج صحیح هستند؟ یک راه آسان برای تأیید درست بودن آنها در واقع اجرای رگرسیون متغیر تصنعی است. سپس دقیقاً همان تحلیل را با استفاده از ANOVA اولیه انجام خواهیم داد.

به عنوان مثال ، بیایید با اجرای دستور زیر ، حقوق و دستمزد را از وضعیت تاهل از طریق هر دو روش پیش بینی، پیش بینی کنیم.

*Compare mean salaries by marital status via dummy variable regression.

regression
/dependent salary
/method enter marit_1 to marit_3.

*Compare mean salaries by marital status via ANOVA.

means salary by marit
/statistics anova.

توجه داشته باشید که r-square رگرسیون برابراست با 0.089 که بامربع ایتا در نتایج ANOVA یکسان است. این منطقی است زیرا هر دو نسبت واریانس حقوق و دستمزد حساب شده توسط وضعیت تأهل را نشان می دهند. همچنین ، ANOVA درست مانند تجزیه و تحلیل رگرسیون ما با سطح معنی داری 002/0 = p ظاهر می شود. ما حتی می توانیم ضرایب B رگرسیون و فواصل اطمینان آنها را از طریق ANOVA تکرار کنیم (این کار را در آموزش بعدی انجام خواهیم داد). اما در حال حاضر ، بیایید فقط نتیجه بگیریم که نتایج درست هستند.

مثال ii -متغیر طبقه ای رشته ای

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

*Inspect basic frequency table.

frequencies jtype.

*Change ‘(Unknown)’ into ‘NA’.

recode jtype ( ‘(Unknown)’ = ‘NA’).

*Set empty string value and ‘NA’ as user missing values.

missing values jtype (”,’NA’).

*Reinspect basic frequency table.

frequencies jtype

مجدداً ، به

Transform        >>      SPSS tutorials – Create Dummy Variables 

میرویم  و کادر گفتگو را مانند تصویر زیر پر می کنیم.

2برای متغیرهای رشته ای ، مقادیر معمولاً دسته های خود را توصیف می کنند. بنابراین ما مقادیر را (به جای برچسب مقدار) به برچسب های متغیر برای متغیرهای تصنعی خود میزنیم .

3اگر دسته اول و آخر را به عنوان مرجع نمی خواهیم ، “هیچ” را انتخاب می کنیم. در این حالت ، ما باید یکی از این متغیرهای تصنعی را به صورت دستی از تحلیل رگرسیون متعاقب خود حذف کنیم.

4علاوه بر ایجاد متغیرهای تصنعی ، ممکن است بخواهیم دستورایجاد شده  توسط ابزار را نیز بررسی کنیم. همچنین ممکن است به جای اینکه ابزار ما این کار را برای ما انجام دهد ، آن را از پنجره دستور کپی ، پیست ، ویرایش و اجرا کنیم.

تکمیل این مراحل منجر به دستور زیر می شود.

*Create dummy variables for Job Type without any reference category.

SPSS TUTORIALS DUMMIFY VARIABLES=jtype
/OPTIONS NEWLABELS=LABVAL REFCAT=NONE ACTION=BOTH.

نتایج

علاوه بر ایجاد 5 متغیر تصنعی ، ابزار ما همچنین دستوری را که در پنجره خروجی استفاده شده است مانند تصویر زیر چاپ می کند.

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

 *Compare salaries by Job Type wrong way: no reference category.

regression
/dependent salary
/method enter jtype_1 jtype_2 jtype_3 jtype_4 jtype_5.

*Compare salaries by Job Type right way: reference category = 4 (sales).

regression
/dependent salary
/method enter jtype_1 jtype_2 jtype_3 jtype_5.

اولین مثال ، تصویر کتاب چند منظوره کامل است: امتیاز برخی از پیش بینی کننده ها را می توان از روی برخی پیش بینی کنندگان دیگر پیش بینی کرد. این منطقی است: پاسخ دادن به  امتیاز 0 از 4 متغیر تصنعی اول باید در آخر امتیاز 1 بدست آورد(و برعکس).

در این شرایط ، ضرایب B را نمی توان تخمین زد. بنابراین ، SPSS یک پیش بینی را از تجزیه و تحلیل خارج می کند ، همانطور که در زیر نشان داده شده است.

توجه داشته باشید که ضریب تحمل نسبت واریانس در یک پیش بینی کننده است که نم تواند توسط سایر پیش بینی کننده ها در مدل حساب شود. بنابراین ضریب تحمل 0.000 بدین معنی است که برخی از پیش بینی ها می توانند 100٪ – یا کاملاً – از روی سایر پیش بینی کننده ها پیش بینی شوند.

ممنون از مطالعه شما