棄却サンプリングで得たサンプルの処理プログラム
#include<oxstd.h> #include <oxdraw.h> // main(){ decl ci,file,mean,n_acf,nobs,q,stdv,x; // nobs: Number of Samples, // ci: Quantiles for Credible Intervals // n_acf: # of points for ACF plot nobs=1000;ci=<0.025,0.975>;n_acf=50; // Read file file = fopen("gamma.dat");fscan(file,"%#m",nobs,1,&x); fclose(file); mean=meanc(x);stdv=varc(x).^0.5; q=quantilec(x,ci); println("%r",{"Gamma"}, "%c",{"Mean","Stdev","95%L","95%U"}, mean'~stdv'~q'); // ACF SetDrawWindow("draw1"); DrawCorrelogram(0,x',"ACF",n_acf); SaveDrawWindow("acf.ps"); CloseDrawWindow(); // Sample Path SetDrawWindow("draw1"); x=x'; DrawTMatrix(0,x[0][0:nobs-1],{"Gamma"},1,1,1); SaveDrawWindow("path.ps"); CloseDrawWindow(); }
このプログラムの出力
Mean Stdev 95%L 95%U Gamma 1.9913 1.4427 0.23872 5.6726