I would like to state the row/col output names in a **ply function, ldply, from the plyr package.
for example,
I have a list, foo, that I want to convert to a data.frame and truncate significant digits with signif()
foo <- list(var.a = runif(3), var.b = runif(3), var.c=runif(3))
What I have now is
q <- ldply(foo, signif, 2)
colnames(dq)[1] <- c('id', 'q1', 'q2','q3')
rownames(dq) <- dq$id
Is there an easier way?
Two previous questions have asked how to use plyr to rename rows and cols using plyr, but I think my question is different. Can the names be stated at the same time as another function (or if I am doing this correctly)? Is this a worthwhile feature request?
You have to give names somewhere, either on the function being called inside as eg in
or has you did after the call.
Another option I frequently use is to explicitly create one-row
data.framein the anonymous worker function.*dply()et al then simply collated these into a singledata.frame. That works well enough for my tastes.