Linear regression ဂဏန်းတွက်စက်
ဤဂဏန်းတွက်စက်သည် ခန့်မှန်းသူကိန်းရှင်တစ်ခု၏ တန်ဖိုးများနှင့် တုံ့ပြန်မှုကိန်းရှင်တစ်ခုအပေါ် အခြေခံ၍ မျဉ်းကြောင်းဆုတ်ယုတ်မှုညီမျှခြင်းကို ထုတ်လုပ်သည်။
အောက်ပါအကွက်များတွင် ခန့်မှန်းသူကိန်းရှင်တစ်ခုအတွက် တန်ဖိုးများနှင့် တုံ့ပြန်မှုပုံစံတစ်ခုအတွက် တန်ဖိုးများစာရင်းကို ရိုးရှင်းစွာထည့်ပါ၊ ထို့နောက် “ တွက်ချက်ရန်” ခလုတ်ကို နှိပ်ပါ။
ခန့်မှန်းတန်ဖိုးများ-
တုံ့ပြန်မှုတန်ဖိုးများ-
တစ်ပြေးညီ ဆုတ်ယုတ်မှု ညီမျှခြင်း-
ŷ = 0.9694 + ( 7.7673 )*x
အံဝင်ခွင်ကျ အရည်အသွေး
R စတုရန်း- 0.8282
စကားပြန်-
ကြိုတင်ခန့်မှန်းကိန်းရှင်သည် 0 နှင့်ညီမျှသောအခါ၊ တုံ့ပြန်မှုကိန်းရှင်၏ပျမ်းမျှတန်ဖိုးမှာ 0.9694 ဖြစ်သည်။
ကြိုတင်ခန့်မှန်းကိန်းရှင်၏ တစ်ယူနစ်တိုးလာမှုသည် တုံ့ပြန်မှုကိန်းရှင်ရှိ ပျမ်းမျှပြောင်းလဲမှု ( 7.7673 ) နှင့် ဆက်စပ်နေသည်။
တုံ့ပြန်မှုကိန်းရှင်တွင် ကွဲလွဲမှု၏ 82.82 % ကို ကြိုတင်ခန့်မှန်းကိန်းရှင်က ရှင်းပြနိုင်သည်။
function calc() {
//get input data var x = document.getElementById('x').value.split(',').map(Number); var y = document.getElementById('y').value.split(',').map(Number);
//check that both lists are equal length if (x.length - y.length == 0) { document.getElementById('error_msg').innerHTML = '';
function linearRegression(y,x){ var lr = {}; var n = y.length; var sum_x = 0; var sum_y = 0; var sum_xy = 0; var sum_xx = 0; var sum_yy = 0;
for (var i = 0; i < y.length; i++) { sum_x += x[i]; sum_y += y[i]; sum_xy += (x[i]*y[i]); sum_xx += (x[i]*x[i]); sum_yy += (y[i]*y[i]); } lr['slope'] = (n * sum_xy - sum_x * sum_y) / (n*sum_xx - sum_x * sum_x); lr['intercept'] = (sum_y - lr.slope * sum_x)/n; lr['r2'] = Math.pow((n*sum_xy - sum_x*sum_y)/Math.sqrt((n*sum_xx-sum_x*sum_x)*(n*sum_yy-sum_y*sum_y)),2); return lr; } var lr = linearRegression(y, x); var a = lr.slope; var b = lr.intercept; var r2 = lr.r2; var r2p = r2*100; document.getElementById('a').innerHTML = a.toFixed(4); document.getElementById('b').innerHTML = b.toFixed(4); document.getElementById('r2').innerHTML = r2.toFixed(4); document.getElementById('interceptOut').innerHTML = b.toFixed(4); document.getElementById('slopeOut').innerHTML = a.toFixed(4); document.getElementById('r2Out').innerHTML = r2p.toFixed(2); } //output error message if boths lists are not equal else { document.getElementById('error_msg').innerHTML = 'The two lists must be of equal length.'; } } //end calc function