将数字分配给r中的分类变量

时间:2017-09-25 11:57:30

标签: r

我已使用csv R 中上传了import个文件。文件包含2列标签和相应的文本/描述标签,从不同的新闻纸张中提取。它有超过2k行,标签重复。标签是文本形式。

我需要在上传文件后将这些映射到数值(商业,娱乐,政治,体育,科技)(0,1,2,3,4)。任何人都可以帮我这个。我是一个非常新的 R 编程

1 个答案:

答案 0 :(得分:0)

假设您的类别属于字符类型,您可以使用factor()函数枚举它们,并减去1以使其从零开始。

df <- data.frame( category = c("business", "entertainment", "business", "sport"), 
                  descr    = c("one", "two", "three", "four") )
df$number <- as.numeric( factor(df$category) ) -1

这导致:

       category descr number
1      business   one      0
2 entertainment   two      1
3      business three      0
4         sport  four      2