我有两组数据:
一组标签(单个单词,如
php
、html
等)一组文本
我现在希望构建一个术语文档矩阵,表示 text
元素中 tags
元素的出现次数。
我调查过R library tm ,以及 TermDocumentMatrix
函数,但我看不到将标签指定为输入的可能性。
有办法做到这一点吗?
我对任何工具(R、Python、其他)持开放态度,尽管使用 R 会很棒。
<小时/>让我们将数据设置为:
TagSet <- data.frame(c("c","java","php","javascript","android"))
colnames(TagSet)[1] <- "tag"
TextSet <- data.frame(c("How to check if a java file is a javascript script java blah","blah blah php"))
colnames(TextSet)[1] <- "text"
现在我想根据TagSet获得TextSet的TermDocumentMatrix。
我尝试过这个:
myCorpus <- Corpus(VectorSource(TextSet$text))
tdm <- TermDocumentMatrix(myCorpus, control = list(removePunctuation = TRUE, stopwords=TRUE))
>inspect(tdm)
A term-document matrix (7 terms, 2 documents)
Non-/sparse entries: 8/6
Sparsity : 43%
Maximal term length: 10
Weighting : term frequency (tf)
Docs
Terms 1 2
blah 1 2
check 1 0
file 1 0
java 2 0
javascript 1 0
php 0 1
script 1 0
但这是根据文本中的单词检查文本,而我想检查是否存在已定义的标签。
最佳答案
tdm.onlytags <- tdm[rownames(tdm)%in%TagSet$tag,]
仅选择您指定的单词,然后继续分析。
关于r - 如何从一组文本和一组特定术语(标签)构建术语文档矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19705895/