【发布时间】:2023-02-03 14:19:50
【问题描述】:
我有一个 R 数据框,其中有一列看起来像这样
codes
111:222:333
222
111:222
我想将 codes 列扩展为单独的二进制列,如下所示:
111 222 333
1 1 1
0 1 0
1 1 0
我尝试使用 strsplit 将 codes 列转换为字符列表。然后,我取消嵌套 codes 列并想执行 pivot_wider,但似乎我无法对具有重复标识列的列执行此操作。
df <- df %>%
mutate(codes = strsplit(codes, ":", TRUE))
unnest(codes) %>%
mutate(value = 1) %>%
pivot_wider(names_from = codes,
values_from = value,
values_fill = 0)
任何有关如何处理此问题的建议将不胜感激!
【问题讨论】: