Hi all, I am trying to create a Discrete Choice Experiment with a Partial Profile Design from 16 Attributes. 6 with two levels and 10 with 3 levels. I successfully created a design with either all two level or all three level attributes using the Instructions provided by Kuhfeld 2010, by first creating a BIBD (or unbalanced block design) and then an orthogonal Array to build the partial profile design. But it doesn’t seem to be possible to have attributes with different numbers of levels. Does anyone know how or wether this is possible with SAS? Thanks Attached find the working code for 16 three level attributes: %mktbibd(b=8, nattrs=16, setsize=6, seed=17) /*create BIBD */
%mktex(18 3 ** 6, n=54, seed=306) /* create orthogonal Array with one 18 level (dropped later) and six (=<setsize) 3 level */
proc sort data=randomized out=randes(drop=x1);
by x2 x1;
run;
proc print noobs data=randes; run;
%mktppro(design=randes, ibd=bibd) /* create partial profile design */
%choiceff(data=chdes, /* candidate set of choice sets */
init=chdes, /* initial design */
initvars=x1-x16, /* factors in the initial design */
model=class(x1-x16 / sta),/* model with stdz orthogonal coding */
nsets=144, /* number of choice sets */
nalts=3, /* number of alternatives */
rscale= /* relative D-efficiency scale factor */
%sysevalf(144 * 6 / 16), /* 6 of 16 attrs in 144 sets vary */
beta=zero) /* assumed beta vector, Ho: b=0 */
%mktblock(data=chdes, /* input choice design to block */
out=finalBlock, /* output blocked choice design */
/* stored in permanent SAS data set */
nalts=3, /* three alternatives */
nblocks=12, /* twelve blocks */
factors=x1-x16, /* 16 attributes, x1-x16 */
print=design, /* print the blocked design (only) */
seed=472) /* random number seed */
... View more