> Would it be possible to extend the specification of the function?
The
> syntax that I have in mind is:
>
> dummify(x,n) where (a) n=0 means no categories are dropped, (b) n=1 means
> that the first category is dropped (default), and (c) n=2 means that the
> last category is dropped.
Better still: dummify(x,n) drops the n-th category. When n=NA, no
categories
are dropped.
I had started coding this, then I thought "Hold on a second, this is
going to be another backward-incompatible change". Another one (arma) is
in the planning stage, and obviously it'd be best to put them together
(plus more that may arise). The question is when.
My suggestion that dummify(x) should be a synonym for dummify(x, 1)
was intended as a way of avoiding a backward-incompatible change. I
assume that under your scheme dummify(x) would translate to
dummify(x, n) with n=NA, which would be backward-incompatible.
I acknowledge that your syntax is more general and has
advantages. My proposal reflected a desire to use the dummify inside
functions when it is a little tedious, though not difficult, to work
out the maximum value that can be dropped. However, this can be got round by
matrix xvals=values(x)
scalar mxval=maxc(xvals)
list dlist=dummify(x, mxval)
so I would be happy with your suggestion.
Gordon