BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
vstorme
Obsidian | Level 7

Hej,

 

I try to design an incomplete block design for 13 replicates of 213 different plant varieties (considered as treatments) with block size 71. I tried following code:
 
title 'Generalized Cyclic Block Design';
proc plan seed=33373;
   treatments Treatment=71 of 213 cyclic (  3	 7   9	 10	 14	 19	 23	
                                           30	33	39	 43	 54	 56	 58	
                                           62	63	64	 71	 73	 75	 83	
                                           88	89	90	 95	 99	100	101	
                                          104  109 110	112	113	114	117	
                                          119  121 122	124	126	129	133	
                                          136  139 142	147	148	151	152	
                                          153  157 160	161	162	168	173	
                                          174  176 179	180	185	187	188	
                                          189  193 200	204	206	210	211	213) 3;
   factors Block=39 Plot=71;
   output out=GCBD;
quit;

I do not get the same replicate number for each variety (treatment). I also tried:
 
title 'Generalized Cyclic Block Design';
proc plan seed=33373;
   treatments Treatment=71 of 213 random;
   factors Block=39 Plot=71;
   output out=GCBD;
quit;
The SAS example gives a perfect replicate number of 2:
 
title 'Generalized Cyclic Block Design';
proc plan seed=33373;
   treatments Treatment=8 of 52 cyclic (1 2 3 4 32 43 46 49) 4;
   factors Block=13 Plot=8;
   output out=GCBD;
quit;
Does it have to do with how you create the initial block and the step?
 
with kind regards,
Veronique
1 ACCEPTED SOLUTION

Accepted Solutions
vstorme
Obsidian | Level 7

Thanks Dave. Based on the paper from Hans-Peter Piepho I tried the following successfully:

 

 

title 'resolvable IBD' ;
* example: v=30 treatments, block size k=5, r=3 replicates;
* nr of blocks needed per rep = 30/5 =6 ;
%let v=30;
%let k=5;
%let r=3;
%let b=6;

data TreatmentLabels;
  do trt=1 to &v;
    output;
  end;
run;

data layout;
  do rep=1 to &r;
    do block=1 to &b;
      do plot=1 to &k;
	    output;
      end;
    end;
  end;
run;

proc optex data=TreatmentLabels seed=98221534;
  class trt;
  model trt;
  blocks design=layout niter=10000 keep=10;
  class rep block plot;
  model rep, block(rep) / prior= 0, 10;
  output out=RIBD;
run;
quit;

This however takes a very long time, and I need v=213, k=71, r=13, b=3. It still was not finished after 12 hours.

View solution in original post

4 REPLIES 4
data_null__
Jade | Level 19

How did you come up with the initial block?

vstorme
Obsidian | Level 7

I just sampled 71 values without replacement from 1:213 and put them in increasing order

StatDave
SAS Super FREQ

See the examples of constructing incomplete block designs in the PROC OPTEX chapter of the SAS/QC User's Guide.

vstorme
Obsidian | Level 7

Thanks Dave. Based on the paper from Hans-Peter Piepho I tried the following successfully:

 

 

title 'resolvable IBD' ;
* example: v=30 treatments, block size k=5, r=3 replicates;
* nr of blocks needed per rep = 30/5 =6 ;
%let v=30;
%let k=5;
%let r=3;
%let b=6;

data TreatmentLabels;
  do trt=1 to &v;
    output;
  end;
run;

data layout;
  do rep=1 to &r;
    do block=1 to &b;
      do plot=1 to &k;
	    output;
      end;
    end;
  end;
run;

proc optex data=TreatmentLabels seed=98221534;
  class trt;
  model trt;
  blocks design=layout niter=10000 keep=10;
  class rep block plot;
  model rep, block(rep) / prior= 0, 10;
  output out=RIBD;
run;
quit;

This however takes a very long time, and I need v=213, k=71, r=13, b=3. It still was not finished after 12 hours.

Ready to join fellow brilliant minds for the SAS Hackathon?

Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.

Register today!
What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 4 replies
  • 1064 views
  • 0 likes
  • 3 in conversation