У меня есть следующие данные таблицы:Указать порядок столбцов dcast вывода
df = data.frame(id=c(1,1,1,1),timepoint=c("3 months","6 months","9 months","12 months"),
date=c("date1","date2","date3","date4"),bool=c("Y","Y","N","Y"),
name=c("abc","def","ghi","jkl"), stringsAsFactors=F)
И хотелось бы, чтобы бросить это в один ряд, с идентификатором в качестве переменной идентификатора следующим образом:
library(reshape2)
melt = melt(df, id=c("id","timepoint"))
df2 = dcast(melt, id~variable+timepoint)
Однако, это оленья кожа дать мне столбцы в порядке, я хотел бы, что:
df1 = df2[,c(1,3,7,11,4,8,12,5,9,13,2,6,10)]
Я попытался с помощью кода ниже, который переупорядочивает расплавленная стол, в надежде, что она будет затем бросить в нужном порядке:
var.names = c("date", "bool","name")
times = c("3 months", "6 months", "9 months", "12 months")
melt = melt[order(melt$id, match(melt$timepoint, times), match(melt$variable, var.names)),]
Но результат тот же, и это кажется мне нужно каким-то образом указать порядок в вызове dcast, но я могу «Не знаю, как это сделать, и поэтому очень признателен за любую помощь!
Большое спасибо и извини, если я пропустил что-то очевидное.