>> (x.n <- cast(x.m, id ~ var, function(.dat){ > + if (length(.dat) == 0) return(0) # test for no data; return > zero if that is the case > + mean(.dat) > + })) Or fill = 0. Hadley -- http://had.co.nz/