R文字挖掘 文章關鍵詞提取

2021-08-04 05:44:48 字數 1509 閱讀 4425

用統計學語言表達,就是在詞頻的基礎上,對每個詞分配乙個權重:

最常用的詞(如「的」、「是」、「在」等)給予最小的權重;

最常見的詞(如「中文分詞」)給予較小的權重;

較少見的詞(如「馬爾科夫模型」)給予較大的權重。

tf計算公式

tf=該次在文件中出現的次數

idf=log(文件總數/包含改詞的文件數+1)

library(tm)

library(tmcn)

library(rwordseg)

docs <- corpus(

dirsource(

c("sogouc.mini/sample/c000007", "sogouc.mini/sample/c000008",

"sogouc.mini/sample/c000010", "sogouc.mini/sample/c000013",

"sogouc.mini/sample/c000014", "sogouc.mini/sample/c000016",

"sogouc.mini/sample/c000020", "sogouc.mini/sample/c000022",

"sogouc.mini/sample/c000023", "sogouc.mini/sample/c000024")),

readercontrol = list(

language='utf-8'

))#移除空白

docs <- tm_map(docs, stripwhitespace)

#移除標點

docs <- tm_map(docs, removepunctuation)

docs <- tm_map(docs, content_transformer(segmentcn), returntype="tm")

docs <- tm_map(docs, content_transformer(function

(x)iconv

(x, from="utf8", to="gb2312", sub="byte")))

tdm<- termdocumentmatrix

( docs,

control = list(

wordlengths= c(1, 4),

stopwords = stopwordscn()

))tf<- as.matrix

(tdm)

idf(tf, 1, function(row) );

tf.idf = tf*idf

(col) )

#獲取每篇文章關鍵字所在的位置,

#這樣子就可以獲取對應的tf、idf以及tf.idf的值了

(col) )

tf[keywordindexes[, 1], 1]

idf[keywordindexes[, 1]]

tf.idf[keywordindexes[, 1], 1]

文字關鍵詞提取 Python

import numpy as np import pandas as pd import jieba import jieba.analyse 讀取txt文字檔案 def read from file directions decode set utf 8 gb18030 iso 8859 2 g...

文字挖掘學習(三) 關鍵詞提取 TF IDF

基本思想 詞頻tf term frequency,衡量乙個term在文件 現的有多頻繁 考慮到文章長度的差異,需要對詞頻做標準化 逆文件頻率idf inverse document frequency,用於模擬在該語料的實際使用環境中,某乙個term有多重要 idf的具體演算法 tf idf tf ...

關鍵詞提取

隱含主題模型優缺點 隱含主題模型可以很好地表示文件和標籤主題,有效降低標籤系統中噪音的影響。但是另外乙個方面,隱含主題相對於詞而言粒度較粗,對於具體實體 如人名 地名 機構名和產品名 的標籤沒有辦法做到很好地區分,因此對這些細粒度標籤推薦效果較差 典型的聚類演算法 層次聚類 hierarchical...