lapply<-vapply

very small speed up using vapply rather than lapply.
I think this step has reached its fastest point without turning the
whole function into a dataframe