Rearranging the response as an array makes more sense
for complete designs.
The function will work fine for fractional designs; the resulting
array will include NAs.
Such designs are usually easier to look at just by printing them, but
using design.table on them will show you the pattern of missing observations.
If you have some functions that work on arrays with NAs,
the value of design.table can be used whether the design is complete or not.
Note that this will not work for designs that are severely fractional, such
as many orthogonal array designs, since it will try to create an array that
is too large.