Melt with melt(DT, id.vars=c(..), variable.name="CategoryLabel", value.name="Value")
Cast with dcast(DT, LHS ~ RHS, value.var="Value", fun.aggregate=sum)
ParameterDetailsid.varstell melt which columns to retainvariable.nametell melt what to call the column with...