جستجو کردن
Close this search box.

رگرسیون درجه دوم در R

نحوه انجام رگرسیون درجه دوم در R
فهرست مطالب

در این مقاله قصد دارم به آموزش رگرسیون درجه دوم در R بپردازم. تا انتهای این مقاله همراه کیارا آکادمی باشید تا آموزش نرم افزار R را به صورت کاربردی دریافت نمایید.

اجرای رگرسیون درجه دوم در R

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

مثال رگرسیون درجه دوم در R

فرض کنید ما علاقه مند به درک رابطه بین تعداد ساعات کار و شادی گزارش شده هستیم. داده های مقاله را در مورد تعداد ساعات کار در هفته و سطح شادی گزارش شده (در مقیاس 0-100) برای 11 نفر مختلف داریم. از مراحل زیر برای برازش مدل رگرسیون درجه دوم در R استفاده کنید:

مرحله 1: داده ها را وارد کنید.

ابتدا یک قاب داده ایجاد می کنیم که حاوی داده های ما باشد:

#داده ایجاد کنید

data <- data.frame(hours=c(6, 9, 12, 14, 30, 35, 40, 47, 51, 55, 60),
happiness=c(14, 28, 50, 70, 89, 94, 90, 75, 59, 44, 27))

#مشاهده داده ها

data

تحلیل آماری

مرحله 2: داده ها را تجسم کنید.

در مرحله بعد، ما یک Scatterplot ساده برای تجسم داده ها ایجاد می کنیم.

#ایجاد پراکندگی

plot(data$hours, data$happiness, pch=16)

رگرسیون درجه دوم در R

به وضوح می بینیم که داده ها از یک الگوی خطی پیروی نمی کنند.

مرحله 3: یک مدل رگرسیون خطی ساده را برازش کنید:

در مرحله بعد، یک مدل رگرسیون خطی ساده را برازش می کنیم تا ببینیم چقدر با داده ها مطابقت دارد:

#مدل خطی مناسب

linearModel <- lm(happiness ~ hours, data=data)

#مشاهده خلاصه مدل

summary(linearModel)

رگرسیون درجه دوم در R

واریانس کل در شادی توضیح داده شده توسط مدل فقط 4.46٪ است، همانطور که توسط مقدار R-squared چندگانه نشان داده شده است.

مرحله 4: برازش مدل رگرسیون درجه دوم. در مرحله بعد، مدل رگرسیون درجه دوم را برازش خواهیم کرد.

#یک متغیر جدید برای ساعت ایجاد کنید

data$hours2 <- data$hours^2

مدل رگرسیون درجه دوم برازش

quadraticModel <- lm(happiness ~ hours + hours2, data=data)

#مشاهده خلاصه مدل

summary(quadraticModel)

رگرسیون درجه دوم در R

کل واریانس شادی توضیح داده شده توسط مدل به 02/96 درصد افزایش یافت. می‌توانیم از کد زیر برای تجسم تطبیق مدل با داده‌ها استفاده کنیم:

#توالی مقادیر ساعت را ایجاد کنید

hourValues <- seq(0, 60, 0.1)

#فهرستی از سطوح شادی پیش بینی شده را با استفاده از مدل درجه دوم ایجاد کنید

happinessPredict <- predict(quadraticModel,list(hours=hourValues, hours2=hourValues^2))

#ایجاد نمودار پراکندگی از مقادیر داده اصلی

plot(data$hours, data$happiness, pch=16)

#افزودن خطوط پیش بینی شده بر اساس مدل رگرسیون درجه دوم

lines(hourValues, happinessPredict, col=’RED’)

رگرسیون درجه دوم در R

می بینیم که خط رگرسیون درجه دوم به خوبی با مقادیر داده مطابقت دارد.

مشاوره پایان نامه و رساله

مرحله 5: مدل رگرسیون درجه دوم را تفسیر کنید. در مرحله قبل دیدیم که خروجی مدل رگرسیون درجه دوم به شرح زیر است:

بر اساس ضرایب نشان داده شده در اینجا، رگرسیون درجه دوم برازش شده خواهد بود:

شادی = -0.1012 (ساعت) 2 + 6.7444 (ساعت) – 18.2536

ما می توانیم از این معادله برای یافتن شادی پیش بینی شده یک فرد با توجه به تعداد ساعات کار در هفته استفاده کنیم. به عنوان مثال، فردی که 60 ساعت در هفته کار می کند، سطح شادی 22.09 پیش بینی می شود:

شادی = -0.1012(60)2 + 6.7444(60) – 18.2536 = 22.09

برعکس، فردی که 30 ساعت در هفته کار می کند سطح شادی 92.99 پیش بینی می شود:

شادی = 0.1012-(30)2 + 6.7444(30) – 18.2536 = 92.99

مطالعه منابع بیشتر:

How to Perform Quadratic Regression in R

دیدگاهتان را بنویسید

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