library(reshape)
# Make some fake data
dat <- data.frame(user = c(1,1,1,2,2,3), group = c(1,1,1,1,1,2), request = c(1,4,7,5,8,1))
# Add in an ordered id
newdat <- ddply(dat, .(user, group), transform, idx = paste("request", 1:length(request), sep = ""))
# Use cast to get what we want
cast(newdat, user + group ~ idx, value = .(request))
Вероятно, есть более хороший способ получить то, что я называю idx, и это, по сути, то, что становится заголовком столбца.Возможно, это можно сделать без создания набора данных newdat, но это то, о чем я думал.