根据R中的唯一字符串对带有字符串的变量进行观察

时间:2018-04-17 13:40:54

标签: r string

一个列变量,大约64000个观测值有字符串(有重复),我需要在观察中对唯一字符串进行编号

对于Eg,请参阅附图。

enter image description here

编号应基于材料列, 例如:

  • 计算机= 1

  • Keyboard = 2

  • 鼠标= 3

  • Monitor = 4

  • USB端口= 5

  • Pen = 6

  • 论文= 7

要在另一列上粘贴的数字

它必须是动态的,因此即使使用另一个唯一的材质名称增加列表,也应该进行自动编号

1 个答案:

答案 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