【发布时间】:2021-03-23 05:07:00
【问题描述】:
我有一列包含混合字符串,我创建了列来表示字符串中的每个唯一字符。如果字符串中的任何字符与这些列之一匹配,我需要使用 [1,0] 对列进行编码。
library(data.table)
d = data.table(string = c("P_P_F_", "U_F_/", "-_P_B"),
P = c(1, 0, 1),
F = c(1, 1, 0),
U = c(0, 1, 0),
B = c(0, 0, 1))
在上面的示例中,string 具有我需要与相应列匹配的字符。第一个字符串有一个P 和F,所以我在这些列中有一个1,其余的有一个0。
字符串中的字符始终用下划线分隔,最大长度为 7。
数据集相当大,所以我更喜欢 data.table 解决方案是可能的。
【问题讨论】:
标签: r data.table