我正在尝试在R中实现一个文本分类程序,它将输入文本(args)分为3个不同的类。我已经通过将输入数据划分为训练和测试数据来成功测试了示例程序。
我现在想构建一些可以让我对自定义文本进行分类的东西。 我的输入数据具有以下结构:
因此,如果我输入自定义文字:“游戏研究时间”,我想得到一个如下所示的矩阵:
请告诉我这样做的最佳方法是什么。
答案 0 :(得分:0)
这听起来很像是一本"字典"在该文本的标记化之后发短信。但是,您在问题中得到的矩阵结果不会影响输入数据中的类别。
所以这里有两个解决方案:一个用于生成您想要的矩阵,另一个用于生成矩阵,该矩阵根据输入数据映射文本的类别的计数对输入文本进行计数。 / p>
这使用R。
中的 quanteda 包require(quanteda)
mymap <- dictionary(list(school = c("time", "games", "studies"),
college = c("time", "games"),
office = c("work")))
dfm("games studies time", verbose = FALSE)
## Document-feature matrix of: 1 document, 3 features.
## 1 x 3 sparse Matrix of class "dfmSparse"
## features
## docs games studies time
## text1 1 1 1
dfm("games studies time", dictionary = mymap, verbose = FALSE)
## Document-feature matrix of: 1 document, 3 features.
## 1 x 3 sparse Matrix of class "dfmSparse"
## features
## docs school college office
## text1 3 2 0