【发布时间】:2023-02-21 22:19:58
【问题描述】:
我有一个具有以下结构的数据框
test <- data.frame(col = c('a; ff; cc; rr;', 'rr; a; cc; e;'))
现在我想从中创建一个数据框,其中包含测试数据框中每个唯一值的命名列。唯一值是以“;”结尾的值字符并以空格开头,不包括空格。然后对于列中的每一行,我希望用 1 或 0 填充虚拟列。如下所示
data.frame(a = c(1,1), ff = c(1,0), cc = c(1,1), rr = c(1,0), e = c(0,1))
a ff cc rr e
1 1 1 1 1 0
2 1 0 1 1 1
我尝试使用 for 循环和列中的唯一值创建一个 df,但它变得很乱。我有一个可用的向量,其中包含列的唯一值。问题是如何创建 1 和 0。我用 grep() 尝试了一些 mutate_all() 函数,但这没有用。
【问题讨论】:
-
你应该有
rr两次 IIRC。
标签: r dummy-variable