我是“R”的新手, 我需要将行转换为列 来源保存在数据框
中我能做什么
destination<- as.data.frame.matrix(xtabs(~order_id+dish_id, source))
但是,我无法得到我想要的东西 所以any1可以帮助我获取目的地
等数据来源: -
order_id primary_dish dish_id category_id
328507 38118 38114 1536
328523 38081 38068 1829
328523 38094 38068 1829
(源数据以上述格式显示)
目的地: -
order_id primary_dish 38114 38068 1536 1829
328507 38118 1 0 1 0
328523 38081 0 1 0 1
328523 38094 0 1 0 1
答案 0 :(得分:0)
这样的事情可能会让你获得所需的输出。
library (dplyr)
library (tidyr)
destination <- destination %>%
mutate (dval = 1) %>%
spread (key = dish_id, value = dval, fill = 0) %>%
mutate (cval = 1) %>%
spread (key = category_id, value = cval, fill = 0) %>%
arrange (order_id, primary_dish)