@stike
2017-07-16T15:19:53.000000Z
字数 1086
阅读 229
R语言学习
TM包文本
r学习32群 无心
library(stringr)
qq_records <- scan(file="d:/UI设计.txt",what="",sep="\n",encoding="UTF-8")
position_user <- which(grepl('^[0-9]+[-]+[0-9]+[-]+[0-9]+[[:space:]]+[0-9]+[:]+[0-9]+',qq_records)==T)
qq_data<-list()
k=1
for(i in 0:(length(position_user)-2)){
qq_data[k]<-list(paste0(qq_records[(position_user[1+i]):(position_user[2+i]-1)],collapse=';'))
k<-k+1
}
data.frame(str_split(qq_data,";",simplify = TRUE,n=2),stringsAsFactors = F) -> qq_data
在R语言中,用于排序的函数有三个:sort() | order() | rank()
三者的区别如下:
函数 | 用途 |
---|---|
sort() | 返回排序后的向量数值 |
order() | 返回向量对应的排序后位置 |
rank() | 返回的是每个向量的"排名" |
排序应用例子: 根据test数据框的第二列倒序排序数据框
test[order(test[,2],decreasing = T),] -> test
语料库搭建 - 根据向量:
Corpus(VectorSource(data)) -> corpus_1
语料库搭建 - 根据文件目录
txt <- system.file("d:/texts", "txt", package = "tm") # 将d:\texts目录加入到txt变量
corpus_1 <- Corpus(DirSource(txt)) #根据目录建立语料库
基础处理:
dtm <- DocumentTermMatrix(x)
tdm <- TermDocumentMatrix(x)
语料库词频统计:
findFreqTerms(x,1,50) #统计语料库x中词频高于1小于50的单词并打印,需先转成dtm或tdm矩阵
findMostFreqTerms(x,n = 2) #打印X语料库中每条语料词频最高的2个词,需先转成dtm或tdm矩阵
语料库关联挖掘
findAssocs(x,"keyword",0.1) #打印语料库x中与关键“keyword”相关性最高的内容,相关性最低要求在0.1以上。