Type : CREATION_INTERNE
Data is generated directly within the script via a DATA step with the 'datalines' command.
| 1 | title 'The Behrens-Fisher Problem'; |
| 2 | |
| 3 | DATA behrens; |
| 4 | INPUT y ind @; |
| 5 | DATALINES; |
| 6 | 121 1 94 1 119 1 122 1 142 1 168 1 116 1 |
| 7 | 172 1 155 1 107 1 180 1 119 1 157 1 101 1 |
| 8 | 145 1 148 1 120 1 147 1 125 1 126 2 125 2 |
| 9 | 130 2 130 2 122 2 118 2 118 2 111 2 123 2 |
| 10 | 126 2 127 2 111 2 112 2 121 2 |
| 11 | ; |
| 1 | PROC MCMC DATA=behrens outpost=postout seed=123 |
| 2 | nmc=40000 monitor=(_parms_ mudif) |
| 3 | statistics(alpha=0.01); |
| 4 | ods select PostSumInt; |
| 5 | parm mu1 0 mu2 0; |
| 6 | parm sig21 1; |
| 7 | parm sig22 1; |
| 8 | prior mu: ~ general(0); |
| 9 | prior sig21 ~ general(-log(sig21), lower=0); |
| 10 | prior sig22 ~ general(-log(sig22), lower=0); |
| 11 | mudif = mu1 - mu2; |
| 12 | IF ind = 1 THEN DO; |
| 13 | mu = mu1; |
| 14 | s2 = sig21; |
| 15 | END; |
| 16 | ELSE DO; |
| 17 | mu = mu2; |
| 18 | s2 = sig22; |
| 19 | END; |
| 20 | model y ~ normal(mu, var=s2); |
| 21 | RUN; |
| 1 | |
| 2 | PROC FORMAT; |
| 3 | value diffmt low-0 = 'mu1 - mu2 <= 0' 0<-high = 'mu1 - mu2 > 0'; |
| 4 | RUN; |
| 5 |
| 1 | PROC FREQ DATA = postout; |
| 2 | tables mudif /nocum; |
| 3 | FORMAT mudif diffmt.; |
| 4 | RUN; |