在一个因子变量中解聚,级联并创建频率表

时间:2018-09-25 06:12:05

标签: r factors

我有一列“ X1”,其中包含需要转换为各个级别的级联条目,然后是同时出现的级别的频率表

项x1

ram [a,b,c]

pam [d,e,f]

必须转换为

items   a   b   c   d   e   f     

ram     1   1   1   0   0   0   

pam     0   0   0   1  1   1      

请告知

2 个答案:

答案 0 :(得分:1)

根据显示的输入,第二列中的值可以是字符串。一种选择是使用str_extractstringr)从'ram'列中提取字母,stack提取到两列data.frame中,获得频率计数({ {1}})将“值”列转换为指定了table的{​​{1}}之后,对于数据集中所有未找到的级别,我们得到0,将其整形为“长”格式与factor

levels

数据

as.data.frame

答案 1 :(得分:0)

使用虚拟人库:

    int[] array = { 0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,..., 100 };
    int count = 0;
    for (int i = 0; i < array.length; i++) {
        count++;
        if (count == 10) {
            System.out.println(array[i]);
            count = 0;
        }
    }

注意:这会将原始字段拆分为多个唯一值。原始字段在数据框中不再可用。

示例:

数据:

enter image description here

之后

library(dummies)
df <- dummy.data.frame(df, names=c(“MyField1”), sep="_")

enter image description here