一个列变量,大约64000个观测值有字符串(有重复),我需要在观察中对唯一字符串进行编号
对于Eg,请参阅附图。
编号应基于材料列, 例如:
计算机= 1
Keyboard = 2
鼠标= 3
Monitor = 4
USB端口= 5
Pen = 6
论文= 7
要在另一列上粘贴的数字
它必须是动态的,因此即使使用另一个唯一的材质名称增加列表,也应该进行自动编号
答案 0 :(得分:0)
# Since you didn't provide an easily reproducible dataset, here's a simple one:
> df <- data.frame(Material = c('Keyboard', 'Mouse', 'Keyboard', 'USB', 'USB'))
> df
Material
1 Keyboard
2 Mouse
3 Keyboard
4 USB
5 USB
您可以使用match
函数在材料的唯一子集中查找索引,从而为每种材料提供唯一ID:
> df$mat.id <- match(df$Material, unique(df$Material))
> df
Material mat.id
1 Keyboard 1
2 Mouse 2
3 Keyboard 1
4 USB 3
5 USB 3