アットウィキロゴ

重回帰

var b=new Array();
var sol=new Array();
var x = new Array();
var y = new Array();
var z = new Array();
 
function sample(){
 
 
    for (s = 1; s < 101;s++ ){
    x[s]=s;
    z[s] = Math.random();
    y[s]=5.1*x[s]+6+Math.random()+z[s];    
    }
 
 
        number = 3;    
 
for(s=1;s<number+1;s++){
a[s]=new Array();
}
 
 
y1 = 0;
for (s = 1; s < 101;s++ ){
y1=y1+y[s];    
}
 
b[1] = y1;
 
y1 = 0;
for (s = 1; s < 101;s++ ){
y1=y1+y[s]*x[s];    
}
 
b[2]=y1;
 
y1 = 0;
for (s = 1; s < 101;s++ ){
y1=y1+y[s]*z[s];    
}
 
b[3]=y1;
 
 
a[1][1] = 100;
 
 
y1 = 0;
for (s = 1; s < 101;s++ ){
y1=y1+x[s]*x[s];    
}
 
a[2][2] = y1;
 
y1 = 0;
for (s = 1; s < 101;s++ ){
y1=y1+z[s]*z[s];    
}
 
a[3][3] = y1;
 
 
y1 = 0;
for (s = 1; s < 101;s++ ){
y1=y1+x[s];    
}
 
a[1][2] = y1;
a[2][1] = y1;
 
 
y1 = 0;
for (s = 1; s < 101;s++ ){
y1=y1+z[s];    
}
 
a[1][3] = y1;
a[3][1] = y1;
 
 
y1 = 0;
for (s = 1; s < 101;s++ ){
y1=y1+z[s]*x[s];    
}
 
a[2][3] = y1;
a[3][2] = y1;
 
 
 
 
for(s=1;s<number+1;s++){
for(sx=1;sx<number+1;sx++){
z=a[sx][s]/a[s][s];
if(s==sx)z=0;
for(tx=1;tx<number+1;tx++){
a[sx][tx]=a[sx][tx]-z*a[s][tx];
}
b[sx]=b[sx]-z*b[s];
}
}
 
 
for(s=1;s<number+1;s++){
sol[s]=b[s]/a[s][s];
}
 
$("#memo").html(sol[2]);
 
 
}
最終更新:2015年04月03日 05:11