به کمک نیاز دارید؟

خدمات تخصصی

جستجو
این کادر جستجو را ببندید.
رگرسیون

رگرسیون خطی ساده و رگرسیون خطی چندگانه

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

رگرسیون خطی ساده

فرض کنید 2 بردار y و x به حجم n وجود دارد و به نظر می‌رسد که بین این دو نمونه رابطه‌ای خطی وجود دارد. با استفاده از تابع ()lm رگرسیون موجود بین این 2 بردار را بدست می‌آوریم.

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

 

بطور مثال فرض کنید دو بردار x و y زیر موجودند:

(set.seed(50

(x<-rnorm(1000,0,1

(y<-rnorm(1000,3,1

برای اینکه بخواهیم رگرسیون به شکل زیر را به دست آوریم:

yi=a+bxi+ei

 (lm(y~x

را اجرا می‌کنیم که براورد عرض از مبدا (intercept) و شیب خط رگرسیون (که در مدل رگرسیونی فوق به ترتیب مقادیر a و b) هستند به صورت زیر نشان داده می‌شود:

:Call

(lm(formula = y ~ x

 :Coefficients

Intercept)          x)

      0.008005-        3.018635

رگرسیون خطی چندگانه

فرض کنید متغیر پاسخ (y) و چند متغیر پیشگو (برای مثال u، v و w) موجود است و تصور می‌کنیم که بین این متغیرهای پیشگو و متغیر پاسخ ارتباط خطی وجود دارد.

بطور مثال فرض کنید دو بردار u، v، w و y زیر موجودند:

(set.seed(500

(u<-rnorm(1000,1,1

(v<-rnorm(1000,3,1

(w<-rnorm(1000,1,1

(y<-rnorm(1000,10,1

برای اینکه بخواهیم رگرسیون به شکل زیر را به دست آوریم:

yi=a0+a1ui+ a2vi + a3wi + ei

 (lm(y~u+v+w

بدست آوردن آماره‌های رگرسیون

فرض کنید درباره رگرسیونی که بدست آورده‌ایم، می‌خواهیم اطلاعاتی چون R2، آماره F، فواصل اطمینان برای ضرائب رگرسیون، مانده‌ها، جدول ANOVA و… را بدست آوریم.

برای این منظور پس از اجرای رگرسیون و نامگذاری دلخواه آن (مثلاً برای راحتی کار نام متغیر را m در نظر می‌گیریم)، برای

-جدول ANOVA، تابع (anova(m؛

-ضرائب مدل، (coefficient(m یا (coef(m؛

-فواصل اطمینان ضرائب مدل، (confint(m؛

-مجموع مربعات خطا، (deviance(m؛

-بردار اثرات متعامد، (effects(m؛

-بردار مقادیر برازیده شده متغیر پاسخ (y، fitted(m؛

– مانده‌ها، (residuals(m یا (resid(m؛

-خلاصه آماره‌ها چون، R2، F و خطای استاندارد مانده‌ها، (summary(m؛

-ماتریس واریانس – کوواریانس پارامترهای اصلی، (vcov(m.

تشخیص یک مدل رگرسیون خطی

فرض کنید برای مجموعه داده‌ای رگرسیون را اجرا کرده‌ایم و می‌خواهیم کیفیت مدل را تشخیص دهیم.

برای این منظور ابتدا تابع plot را برای مدل مورد نظر اجرا می‌کنیم که برخی نمودارهای را جهت تشخیص این موضوع ارائه می‌کند.

بعد از نصب پکیج car می‌توان از تابع ()outlierTest برای بررسی مانده‌های مدل استفاده کرد.

با در نظر گرفتن مثال زیر به ارائه مختصری از کار فوق می‌پردازیم.

فرض کنید:

(set.seed(1500

(x<-rnorm(1000,0,1

(y<-rnorm(1000,00,1

(m<- lm(y~x

پس از اجرای تایع:

(plot(m

به طور مثال نمودار اول بیانگر پراکنش مقادیر برازیده شده در برابر مانده‌هاست. همچنین دومین نمودار بیانگر Q-Q plot است که نشان می‌دهد آیا مانده‌ها از تابع توزیع نرمال پیروی می‌کنند یا خیر.

 پیشگویی مقادیر جدید

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

برای مثال اگر:

(set.seed(2500

(x<-rnorm(1000,0,1

(y<-rnorm(1000, 0,1

(m<- lm(y~x

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

(u<-rnorm(1000,0,1

داده‌هایی باشند که می‌خواهیم با استفاده از مدل مقادیر آن پیشگویی شوند، برای پیشگویی ابتدا چارچوب داده مربوط داده‌های فوق را به صورت

(pred<-data.frame(u

ساخته و سپس با استفاده از دستور:

(predict(m,pred

مقادیر را پیشگویی می‌کنیم.

با دریافت « مشاوره برنامه‌نویسی، وب و سئو » از کارشناسان جوان حرفه‌ای و باتجربه ساکوراد؛ موفقیت کسب و کار، رونق فروش و افزایش درآمد خود را تضمین کنید!

 

و اما کلام آخر…

رگرسیون خطی ساده و چندگانه ابزارهای قدرتمندی برای تحلیل داده‌ها هستند که با استفاده از تابع lm() در R به سادگی قابل پیاده‌سازی‌اند. این روش‌ها به شما کمک می‌کنند تا روابط بین متغیرها را شناسایی کرده و پیش‌بینی‌های دقیقی انجام دهید.

تصویر دکتر علی قوامی
دکتر علی قوامی
دانش‌آموخته دکترای تخصصی (PhD) کارآفرینی فناوری، بنیانگذار و مدیر گروه بین‌المللی کسب و کار ساکوراد با بیش از ۲۰ سال تجربه بعنوان کوچ، مدرس، مشاور و منتور در حوزه‌های مختلف راه‌اندازی و توسعه کسب‌وکار در ۱۵ کشور جهان هستم. در تلاشم تا تجربیات ذی‌قیمت خود را با شما دوستان عزیزم به اشتراک گذارم.
پیشنهاد بر اساس سلیقه شما
دستور Insert

دستور Insert

دستور Insert در SQL برای وارد کردن رکوردهای جدید به یک جدول در پایگاه داده استفاده می‌شود. این دستور به شما امکان می‌دهد تا داده‌ها

ادامه مطلب »

مسیریابی تحصیلی - شغلی (آنلاین)

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

سئوالات و نظرات ارزشمند خود را با ما مطرح کنید

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

کلینیک مشاوره کسب و کار

ارائه‌ی خدمات کوچینگ، مشاوره و منتورینگ توسط برترین متخصصان جوان

هاست سنتر حرفه‌ای

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

کانال یوتیوب

آموزش‌ها و نکات کلیدی ما را دنبال کنید

کانال تلگرام

اخبار و تخفیفات گروهی ما را دنبال کنید

صفحه اینستاگرام

آموزش‌ها و تخفیفات گروهی ما را دنبال کنید

راهنمای گام به گام تا دریافت مشاوره

گام اول

انتخاب حوزه تخصصی مدنظر

گام دوم

بررسی رزومه مشاوران مرتبط

گام سوم

انتخاب مشاور با تخصص مدنظر

گام چهارم

تکمیل فرم و ثبت درخواست

گام پنجم

پرداخت حق‌الزحمه مشاور

گام ششم

تماس با شما برای تعیین وقت

گام هفتم

برقراری ارتباط شما با مشاور