【发布时间】:2018-01-29 03:46:04
【问题描述】:
我计算了“yelp.csv”、“yelpp.csv”、“yelpn.csv”的词袋,并创建了个人数据集词频矩阵。现在,我想将 yelp 的词袋与 yelpn 进行比较,并检查 yelp 中有多少词出现在 yelpn 中以及它们的频率,并将其存储在一个变量中作为矩阵,然后对于 yelpp 也是如此。叫喊包含正面和负面。 yelpp,只有正面和 yelpn,只有负面。任何人都可以完成代码吗?我不知道这段代码是否相关,我希望如此。
getwd()
setwd("/Users/ash/RProjects/exc")
getwd()
df <- read.csv("yelp.CSV",header = TRUE,quote="\"",stringsAsFactors= TRUE,
strip.white = TRUE)
df
dfd<-as.character(df[,2])
dfd
df2<-as.character(df[,1])
df2
words <- readLines(system.file("stopwords", "english.dat",
package = "tm"))
s<-remove_stopwords(dfd, words, lines = TRUE)
s
print(paste("****Stopwords are removed successfully****"))
n<-removeNumbers(s)
n
t<-removePunctuation(n, preserve_intra_word_dashes = FALSE)
t
#pos
dfp <- read.csv("yelpp.CSV",header = TRUE,quote="\"",stringsAsFactors= TRUE,
strip.white = TRUE)
dfp
dfdp<-as.character(dfp[,2])
dfdp
df2p<-as.character(dfp[,1])
df2p
wordsp <- readLines(system.file("stopwords", "english.dat",
package = "tm"))
sp<-remove_stopwords(dfdp, words, lines = TRUE)
sp
print(paste("****Stopwords are removed successfully****"))
np<-removeNumbers(sp)
np
tp<-removePunctuation(np, preserve_intra_word_dashes = FALSE)
tp
#neg
dfn <- read.csv("yelpn.CSV",header = TRUE,quote="\"",stringsAsFactors= TRUE,
strip.white = TRUE)
dfn
dfdn<-as.character(dfn[,2])
dfdn
df2n<-as.character(dfn[,1])
df2n
wordsn <- readLines(system.file("stopwords", "english.dat",
package = "tm"))
sn<-remove_stopwords(dfdn, words, lines = TRUE)
sn
print(paste("****Stopwords are removed successfully****"))
nn<-removeNumbers(sn)
nn
tn<-removePunctuation(nn, preserve_intra_word_dashes = FALSE)
tn
#bag
b<-bag_o_words(t, apostrophe.remove = TRUE)
b
b.mat = as.matrix(b)
b.mat
bp<-bag_o_words(tp, apostrophe.remove = TRUE)
bp
bp.mat = as.matrix(bp)
bp.mat
bn<-bag_o_words(tn, apostrophe.remove = TRUE)
bn
bn.mat = as.matrix(bn)
bn.mat
#frequent terms
frequent_terms <- freq_terms(b.mat, 2000)
frequent_terms
frequent_termsp <- freq_terms(tp, 2000)
frequent_termsp
frequent_termsn <- freq_terms(tn, 2000)
frequent_termsn
【问题讨论】:
-
为每个文件创建语料库后,使用
tm包,使用findFreqTerms(...)获取常用词列表,然后使用yelp*.csv比较这些常用词findAssocs(...) -
@parth 你能给我一个 findAssocs() 的例子吗?假设所有三个语料库的 findfreqterm() 变量为 o、p、q 和语料库 c1、c2、c3。当我在 findassocs() 中使用 corlimit 时,它会给出与它相关的术语。但是,我需要在 yelp*.csv 中重复的确切单词及其以整数表示的重复频率。
-
我的意思是,如果两个语料库相似,语料库中的常用词可能有更高的相似性,很快就会分享一个例子
标签: r text-mining tm qdap sentimentr