var n=0*1, r=0*1, p=0*1, q=0*1, lower95=0*1, upper95=0*1, lower99=0*1, upper99=0*1, zr=0*1, zbig = 0*1, rplus = 0*1, rminus = 0*1, sdz = 0*1;var z_lower95 = 0*1, z_upper95 = 0*1, z_lower99 = 0*1, z_upper99=0*1;var count1 = 0*1, count2 = 0*1, spin = 0*1, zelt=0*1;function rnd2(x){return Math.round(x*100)/100}function rnd4(x){return Math.round(x*10000)/10000}function rnd6(x){return Math.round(x*1000000)/1000000}function calc() {var k = 1*0;n = 0*1;var sumx = 0*1;var sumy = 0*1;var sumsqx = 0*1;var sumsqy = 0*1;var sumxy = 0*1;var xjx = " ";var vals1 = document.xy.elements[0].value;if(vals1.indexOf("\t")>-1){xjx="\t"}var xjz = " ";if(vals1.indexOf("\r")>-1){xjz="\r"}else{xjz="\n"}vals1 = vals1.split(xjz);n = vals1.length;if(vals1[n-1]==""){n=n-1}if(vals1[n-1]==""){n=n-1}if(vals1[n-1]==""){n=n-1}for(var i=0; i<n; i++) {vals1[i]=vals1[i].split(xjx)}for (var i=0; i<n; i++){sumx+=vals1[i][0]*1;sumy+=vals1[i][1]*1;sumsqx+=vals1[i][0]*vals1[i][0];sumsqy+=vals1[i][1]*vals1[i][1];sumxy+=vals1[i][0]*vals1[i][1];}<!--end.for--->var mx = rnd4(sumx/n);var my = rnd4(sumy/n);var ssx = sumsqx-((sumx*sumx)/n);var ssy = sumsqy-((sumy*sumy)/n);var ssxy = sumxy-((sumx*sumy)/n);r = ssxy/Math.sqrt(ssx*ssy);var rsq = r*r;var slope = ssxy/ssx;var inter = my-(slope*mx);var res = new Array();for (var i=0; i<n; i++){res[i] = rnd4(vals1[i][1]-(inter+(slope*vals1[i][0])))}var se = (ssy*(1-rsq))/(n-2);var seb = Math.sqrt(se/ssx);document.r.elements[0].value =  rnd4(r);document.r.elements[1].value =  rnd4(rsq);document.r.elements[2].value =  rnd6(slope);document.r.elements[3].value =  rnd6(inter);document.r.elements[4].value =  rnd4(Math.sqrt(se));document.show1.elements[0].value =  n;document.show1.elements[1].value =  mx;document.show1.elements[2].value =  my;document.show1.elements[3].value =  rnd4(ssx/(n-1));document.show1.elements[4].value =  rnd4(ssy/(n-1));document.show1.elements[5].value =  rnd4(Math.sqrt(ssx/(n-1)));document.show1.elements[6].value =  rnd4(Math.sqrt(ssy/(n-1)));document.show1.elements[7].value =  rnd4(Math.sqrt(ssx/(n-1)/n));document.show1.elements[8].value =  rnd4(Math.sqrt(ssy/(n-1)/n));document.show0.elements[0].value = Math.round(sumx*10000)/10000;document.show0.elements[1].value = Math.round(sumsqx*10000)/10000;document.show0.elements[2].value = Math.round(sumy*10000)/10000;document.show0.elements[3].value = Math.round(sumsqy*10000)/10000;document.show0.elements[4].value = Math.round(sumxy*10000)/10000;var report = "";for (var i=0; i<n; i++){report+=vals1[i][0]+"___"+vals1[i][1]+"___"+res[i]+xjz}document.xyz.elements[0].value =  report;if (r>=1) {alert("With r=+1.0, the value of t cannot be calculated.  If n>4, you may assume that your calculated value of r is significant beyond the .01 level for a two-tailed test.")}if (r<=-1) {alert("With r=-1.0, the value of t cannot be calculated.  If n>4, you may assume that your calculated value of r is significant beyond the .01 level for a two-tailed test.")}var t = Math.sqrt( (1-(r*r))/(n-2));t = rnd2(r/t);document.t.elements[0].value =  t;var df = n-2;document.df.elements[0].value =df;if(document.t.elements[0].value=="NaN"){document.t.elements[0].value=""}var zda = Tcall(buzz(eval(t),eval(df)));var zdb = zda/2;if(zda<.0001||zda>1.0){zda="<.0001"}if(zdb<.0001||zdb>1.0){zdb="<.0001"}document.pa.elements[0].value = zda;document.pb.elements[0].value = zdb;calc2();var t05 = 1*0;var t01 = 1*0;var peg = 1*0;t = 1*1;for (var i=0; i<2000; i++){t = t+.01*1;peg = Tcall(buzz(eval(t),eval(df)));if(peg<=.05){t05 = t*1;break;}}<!--end.for--->for (var i=0; i<1000; i++){t = t+.01*1;peg = Tcall(buzz(eval(t),eval(df)));if(peg<=.01){t01 = t*1;break;}}<!--end.for--->var fac95 = t05*seb;var fac99 = t01*seb;document.lower95s.elements[0].value = rnd4(slope-fac95*1);document.upper95s.elements[0].value = rnd4(slope+fac95*1);document.lower99s.elements[0].value = rnd4(slope-fac99*1);document.upper99s.elements[0].value = rnd4(slope+fac99*1);}<!--end f.calc--->function calc3(){n = 1*document.show1.elements[0].value;r = 1*document.r.elements[0].value;if(r*r==1) {r = r*.999};if(r*r>1) {alert("The value of r must fall between +1.0 and -1.0, inclusive.");r = 0;document.r.elements[0].value = 0;n = 10000000;}rplus = 1*r+1;if(Math.floor(n)<n) {alert("n must be an integer value.")};zr = (Math.log(rplus)-Math.log(rminus))/2;sdz = 1/Math.sqrt(n-3);z_upper95 = 1*zr+(sdz*1.95996);z_lower95 = zr-(sdz*1.95996);z_upper99 = 1*zr+(sdz*2.57583);z_lower99 = zr-(sdz*2.57583);count1 = -1000;spin = -10;while(z_lower95>spin){count1++;count2 = count1/1000;spin = (Math.log(count2+1)-Math.log(1-count2))/2;}<!--end while-->if(Math.abs(count2)==.999) {count2 = Math.round(count2)};if(zelt>0){document.lower95.elements[0].value=count2}count1 = -1000;spin = -10;while(z_lower99>spin){count1++;count2 = count1/1000;spin = (Math.log(count2+1)-Math.log(1-count2))/2;}<!--end while-->if(Math.abs(count2)==.999) {count2 = Math.round(count2)};if(zelt>0){document.lower99.elements[0].value=count2}count1 = 1000;spin = 10;while(z_upper95<spin){count1--;count2 = count1/1000;spin = (Math.log(count2+1)-Math.log(1-count2))/2;}<!--end while-->if(Math.abs(count2)==.999) {count2 = Math.round(count2)};if(zelt>0){document.upper95.elements[0].value=count2}count1 = 1000;spin = 10;while(z_upper99<spin){count1--;count2 = count1/1000;spin = (Math.log(count2+1)-Math.log(1-count2))/2;}<!--end while-->if(Math.abs(count2)==.999) {count2 = Math.round(count2)};if(zelt>0){document.upper99.elements[0].value=count2}rminus = 1-r;if(n<4&&zelt>0) {document.upper95.elements[0].value = "";document.upper99.elements[0].value = "";document.lower95.elements[0].value = "";document.lower99.elements[0].value = "";}}<!--end function calc3-->function calc2(){zelt = 0*1;calc3();zelt+=1;calc3();zelt = 0*1;}<!--end function calc2-->function unwipe(){var xjz = " ";if(document.xyz.elements[0].value.indexOf("\r")>-1){xjz="\r"}else{xjz="\n"}var vals2 = document.xyz.elements[0].value.split(xjz);var nn = vals2.length-1;for (var i=0; i<nn; i++) {vals2[i]=vals2[i].split("___")}var vals3 = new Array();for (var i=0; i<9; i++) {vals3[i]=document.show1.elements[i].value}var vals4 = new Array();for (var i=0; i<5; i++) {vals4[i]=document.r.elements[i].value}var vals5 = new Array();for (var i=0; i<5; i++) {vals5[i]=document.show0.elements[i].value}var tx = document.t.elements[0].value;var dfx = document.df.elements[0].value;var p1 = document.pb.elements[0].value;var p2 = document.pa.elements[0].value;var date = new Date();var u95 = document.upper95.elements[0].value;var u99 = document.upper99.elements[0].value;var l95 = document.lower95.elements[0].value;var l99 = document.lower99.elements[0].value;var aa = '<BODY BGCOLOR="#FFFFFF" linkColor="010785" vlinkColor="010785"><font face="verdana, arial"><FONT COLOR="010785">VassarStats Printable Report<BR>Linear correlation and Regression</font><br>'+date+'<HR>';document.open();document.write(aa);document.write('<FONT COLOR="010785">Data Summary</font><FONT COLOR="#FFFFFF"><SUB>T</SUB></FONT><BR><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=2 BGCOLOR="#FFFFFF" BORDERCOLOR="white"><TR valign=middle><TD width=10><TD nowrap align=right><font face="verdana, arial"><FONT COLOR="#FFFFFF">i</FONT><IMG ALIGN=Absmiddle SRC="sum.gif">X =<BR><TD>'+vals5[0]+'<BR><TD>&nbsp;<TD nowrap align=right><font face="verdana, arial"><FONT COLOR="#FFFFFF">i</FONT><IMG ALIGN=Absmiddle SRC="sum.gif">X<SUP>2</SUP><FONT COLOR="#FFFFFF"><SUB>i</SUB></FONT> =<BR><TD>'+vals5[1]+'<BR><TR valign=middle><TD width=10><TD nowrap align=right><font face="verdana, arial"><FONT COLOR="#FFFFFF">i</FONT><IMG ALIGN=Absmiddle SRC="sum.gif">Y =<BR><TD>'+vals5[2]+'<BR><TD>&nbsp;<TD nowrap align=right><font face="verdana, arial"><FONT COLOR="#FFFFFF">i</FONT><IMG ALIGN=Absmiddle SRC="sum.gif">Y<SUP>2</SUP><FONT COLOR="#FFFFFF"><SUB>i</SUB></FONT> =<BR><TD>'+vals5[3]+'<BR><TR valign=middle><TD width=10><TD nowrap align=right><font face="verdana, arial"><FONT COLOR="#FFFFFF">i</FONT><IMG ALIGN=Absmiddle SRC="sum.gif">XY =<BR><TD colspan=4>'+vals5[4]+'<BR><TR><TD></TABLE><BR>');document.write('<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=4><tr ALIGN=Center><td><font face="verdana, arial"><td><font face="verdana, arial">X</FONT><td><font face="verdana, arial">Y</FONT><tr><td align=right><font face="verdana, arial">N<BR><td COLSPAN="2" align=center><font face="verdana, arial">'+vals3[0]+'<BR><tr align=center><td align=right><font face="verdana, arial">Mean<BR><td><font face="verdana, arial">'+vals3[1]+'<BR><td><font face="verdana, arial">'+vals3[2]+'<BR><tr align=center><td align=right><font face="verdana, arial">Variance<BR><td><font face="verdana, arial">'+vals3[3]+'<BR><td><font face="verdana, arial">'+vals3[4]+'<BR><tr align=center><td align=right><font face="verdana, arial">Std.Dev.<BR><td><font face="verdana, arial">'+vals3[5]+'<BR><td><font face="verdana, arial">'+vals3[6]+'<BR><tr align=center><td align=right><font face="verdana, arial">Std.Err.<BR><td><font face="verdana, arial">'+vals3[7]+'<BR><td><font face="verdana, arial">'+vals3[8]+'<BR></table>');document.write('<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=4><TR><TD colspan=5><font face="verdana, arial"><FONT COLOR="010785">Analysis Summary</font><tr align=center valign=bottom><td><font face="verdana, arial">r<BR><td><font face="verdana, arial">r<sup>2</sup><BR><td><font face="verdana, arial">Slope<BR><td><font face="verdana, arial">Y<BR>Intercept<BR><td nowrap><font face="verdana, arial">Std. Err. of<br>Estimate<BR><tr align=center><td><font face="verdana, arial">'+vals4[0]+'<BR><td><font face="verdana, arial">'+vals4[1]+'<BR><td><font face="verdana, arial">'+vals4[2]+'<BR><td><font face="verdana, arial">'+vals4[3]+'<BR><td><font face="verdana, arial">'+vals4[4]+'<BR></table>');document.write('<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=2 align=left><tr align=center><td></form><font face="verdana, arial">&nbsp;&nbsp;t&nbsp;&nbsp;<BR><td><font face="verdana, arial">&nbsp;&nbsp;df&nbsp;&nbsp;<BR><tr align=center><td><font face="verdana, arial">'+tx+'<BR><td><font face="verdana, arial">'+dfx+'<BR></table><TABLE BORDER=1 CELLSPACING=1 CELLPADDING=2><TR ALIGN=left><TD rowspan=2><font face="verdana, arial">&nbsp;&nbsp;P&nbsp;&nbsp;<td><font face="verdana, arial">one-tailed<BR><td><font face="verdana, arial">'+p1+'<BR><TR ALIGN=left><td><font face="verdana, arial">two-tailed<BR><td><font face="verdana, arial">'+p2+'<BR></TABLE><BR clear=left>');document.write('<FONT COLOR="010785">0.95 and 0.99 Confidence Intervals of rho</font><TABLE BORDER=1 CELLSPACING=1 CELLPADDING=2><TR align=center>	<TD>	<TD><font face="verdana, arial">Lower Limit<BR>	<TD><font face="verdana, arial">Upper Limit<BR><TR align=center>	<TD><font face="verdana, arial">0.95<BR>	<TD><font face="verdana, arial">'+l95+'<BR>	<TD><font face="verdana, arial">'+u95+'<BR><TR align=center>	<TD><font face="verdana, arial">0.99<BR>	<TD><font face="verdana, arial">'+l99+'<BR>	<TD><font face="verdana, arial">'+u99+'<BR></TABLE>');document.write('<TABLE BORDER=1 CELLSPACING="1" CELLPADDING="1"><TR><TD colspan=4><font face="verdana, arial"><FONT COLOR="010785">Data Entered</font><TR align=center><TD><font face="verdana, arial">Count<BR><TD><font face="verdana, arial">&nbsp;&nbsp;X&nbsp;&nbsp;<BR><TD><font face="verdana, arial">&nbsp;&nbsp;Y&nbsp;&nbsp;<BR><TD><font face="verdana, arial">Residual<BR><TR align=center valign=top><TD><font face="verdana, arial">');for (var i=0; i<nn; i++){document.write((i+1*1)+'<BR>')}document.write('<TD><font face="verdana, arial">');for (var i=0; i<nn; i++){document.write(vals2[i][0]+'<BR>')}document.write('<TD><font face="verdana, arial">');for (var i=0; i<nn; i++){document.write(vals2[i][1]+'<BR>')}document.write('<TD><font face="verdana, arial">');for (var i=0; i<nn; i++){document.write(vals2[i][2]+'<BR>')}document.write('</TABLE>');document.close();}<!--end.f.unwipe-->function wipe() {document.xy.elements[0].value = "";document.xyz.elements[0].value = "";for (var i=0; i<9; i++){document.show1.elements[i].value=""}for (var i=0; i<5; i++){document.r.elements[i].value=""}for (var i=0; i<5; i++) {document.show0.elements[i].value = "";}document.df.elements[0].value = "";document.t.elements[0].value = "";document.pa.elements[0].value = "";document.pb.elements[0].value = "";document.upper95.elements[0].value = "";document.upper99.elements[0].value = "";document.lower95.elements[0].value = "";document.lower99.elements[0].value = "";document.lower95s.elements[0].value = "";document.upper95s.elements[0].value = "";document.lower99s.elements[0].value = "";document.upper99s.elements[0].value = "";setTimeout('document.xy.elements[0].value = "";', 500);setTimeout('document.xyz.elements[0].value = "";', 500);}<!--end.f.wipe-->
