【发布时间】:2017-04-23 05:06:16
【问题描述】:
我经常使用包含需要分隔字符串值的列的数据框。这是由数据输入程序中的“选择多个”选项造成的(不幸的是,我无法更改)。我试过tidyr::separate 但这并没有正确排序结果。一个例子:
require(tidyr)
df = data.frame(
x = 1:3,
sick = c(NA, "malaria", "diarrhoea malaria"))
df <- df %>%
separate(sick, c("diarrhoea", "cough", "malaria"),
sep = " ", fill = "right", remove = FALSE)
但我希望结果如下所示:
df2 = data.frame(
x = 1:3,
sick = c(NA, "malaria", "diarrhoea malaria"),
diarrhoea = c(NA, NA, "diarrhoea"),
cough = c(NA, NA, NA),
malaria = c(NA, "malaria", "malaria"))
我们将不胜感激任何正确方向的帮助。
【问题讨论】: