در این مقاله قصد دارم به آموزش رگرسیون توانی (Power Regression) در R بپردازم. تا انتهای این مقاله همراه کیارا آکادمی باشید تا آموزش نرم افزار R را به صورت کاربردی دریافت نمایید.
رگرسیون توانی چیست؟
رگرسیون توانی نوعی رگرسیون غیر خطی است که به شکل زیر است:
y برابر = ax به توان 2 |
تحلیل فرمول:
- y: متغیر پاسخ
- x: متغیر پیش بینی کننده
- a, b: ضرایب رگرسیونی که رابطه بین x و y را توصیف می کند
این نوع رگرسیون برای مدلسازی موقعیتهایی استفاده میشود که در آن متغیر پاسخ برابر با متغیر پیشبینیکننده است که به توان افزایش مییابد. مثال گام به گام زیر نحوه انجام رگرسیون توان را برای یک مجموعه داده معین در R نشان می دهد.
نحوه محاسبه میانگین درصد مطلق خطا (MAPE) در R
اجرای رگرسیون توانی در R
مرحله 1: ایجاد داده
ابتدا، اجازه دهید دیتایی برای دو متغیر ایجاد کنیم: x و y.
#داده ایجاد کنید
x=1:20 y=c(1, 8, 5, 7, 6, 20, 15, 19, 23, 37, 33, 38, 49, 50, 56, 52, 70, 89, 97, 115) |
مرحله 2: داده ها را تجسم کنید
در مرحله بعد، بیایید یک نمودار پراکنده برای تجسم رابطه بین x و y ایجاد کنیم:
#ایجاد پراکندگی
plot(x, y) |
از نمودار می توان دریافت که یک رابطه قدرت واضح بین دو متغیر وجود دارد. بنابراین، به نظر می رسد ایده خوبی است که به جای مدل رگرسیون خطی، معادله رگرسیون توان را به داده ها برازش دهیم.
مرحله 3: برازش مدل رگرسیون توان
در مرحله بعد، از تابع lm برای برازش یک مدل رگرسیونی به داده ها استفاده می کنیم، و مشخص می کنیم که R باید از گزارش متغیر پاسخ و گزارش متغیر پیش بینی کننده هنگام برازش مدل استفاده کند
#مدل را برازش کنید
model <- lm(log(y)~ log(x)) |
#خروجی مدل را مشاهده کنید
summary(model) |
مقدار F کلی مدل 252.1 است و مقدار p متناظر بسیار کوچک است (4.619e-12)، که نشان می دهد مدل به عنوان یک کل مفید است. با استفاده از ضرایب جدول خروجی، می بینیم که معادله رگرسیون توان برازش شده به صورت زیر است:
ln(y) = 0.15333 + 1.43439ln (x) |
با اعمال e در هر دو طرف، می توانیم معادله را به صورت زیر بازنویسی کنیم:
می توانیم از این معادله برای پیش بینی متغیر پاسخ y بر اساس مقدار متغیر پیش بینی x استفاده کنیم. برای مثال، اگر x = 12 باشد، پیشبینی میکنیم که y برابر با 41.167 باشد:
مطالعه منابع بیشتر رگرسیون توانی در R: