// Example of using a function #include summary_stats(const x) { decl q; print("min = ",min(x),"\n"); print("max = ",max(x),"\n"); print("mean = ",meanc(x),"\n"); print("stdev = ",sqrt(varc(x)),"\n"); print("var = ",varc(x),"\n"); print("Quantiles .01, .05, .10, .5, .90, .95, 99\n"); q=quantilec(x,<.01,.05,.10,.5,.90,.95,.99>); print(q); print("\n"); } main() { decl d,r,z,z1,q; d=loadmat("vwretd1.mat"); r=d[][3]; print(r[0:10]); summary_stats(r); // standardize data z = (r-mean)/stdev z=standardize(r); // get summary stats for stadardized data summary_stats(z); // Is the function "standardize(r)" doing what we think it should. Lets check z1=(r-meanc(r))/sqrt(varc(r)); summary_stats(z1); //compare quantiles from data with N(0,1), t(15), t(6) distributions print("Qunatiles from Data, N(0,1), t(15), t(6) distributions"); // set a vector of desired quantiles for the associated probs q=<.01,.05,.10,.5,.90,.95,.99>; print(q'~quantilec(z,q)~quann(q)'~quant(q,15)'~quant(q,6)'); }