アットウィキロゴ

b77;

var point=new Array();
var a=new Array();
 
function myFunction() {
 
  for(s=1;s<13;s++){
  point[s]=new Array();
  }
 
   id="1u0H7Y--FCYAs50wsqyzhGNBMzLS39F9TwSKaXQEzkNU";
  ex = SpreadsheetApp.openById(id);
 
  var sheet = ex.getSheetByName("data");
 
  var v=sheet.getRange(1, 1,13,8).getValues();
 
  for(s=1;s<13;s++){
  for(sx=1;sx<8;sx++){
  point[s][sx]=v[s][sx];
  }
}
 
  var avg=new Array();
 
  for(tr=1;tr<8;tr++){
  a1=0;
  for(s=1;s<13;s++){
  a1=a1+point[s][tr];
  }
  avg[tr]=a1/12;
  }
 
  var sig=new Array();
  for(s=1;s<8;s++){
  sig[s]=new Array();
  }
 
 
  for(s1=1;s1<8;s1++){
  for(s2=1;s2<8;s2++){
    a1=0;
    for(sx=1;sx<13;sx++){  
  a1=a1+(point[sx][s1]-avg[s1])* (point[sx][s2]-avg[s2]); 
    }
  sig[s1][s2]=a1/12;
  }
  }
 
 
 
  for(s=0;s<7;s++){
  a[s]=new Array();
  }
 
 
  for(s1=1;s1<8;s1++){
  for(s2=1;s2<8;s2++){
  z=sig[s1][s2]/Math.sqrt(sig[s1][s1]);
  a[s1-1][s2-1]= z/ Math.sqrt(sig[s2][s2]);
  }}
 
 
 
 
  var sub=numeric;   
 
ev = sub.numeric.eig(a);
 
var xx=ev.lambda.x;
var yy=ev.E.x;
 
var lam=new Array(); 
var v=new Array(); 
 
 for(s=1;s<8;s++){
  v[s]=new Array();
  }
 
 
 
for(s=1;s<8;s++){  
lam[s]=xx[s-1];  
}
 
  for(s=1;s<8;s++){  
  for(sx=1;sx<8;sx++){  
 v[s][sx]=yy[s-1][sx-1];  
  }}
 
 
Logger.log(lam[1]);    
 
 
for(sx=1;sx<8;sx++){  
Logger.log(v[1][sx]);  
}
 
 
  var delta=new Array();
 
  for(s=1;s<13;s++){
  p1=0;
  for(sx=1;sx<8;sx++){
  p1=p1+v[1][sx]*(point[s][sx]-avg[sx]);
  }
  delta[s]=p1;
  } 
 
 
 
 
 
 
}
 
最終更新:2017年04月19日 06:26