欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python數據分析:關鍵字提取方式

 更新時間:2020年02月24日 15:45:34   作者:泛泛之素  
今天小編就為大家分享一篇python數據分析:關鍵字提取方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

TF-IDF

TF-IDF(Term Frequencey-Inverse Document Frequency)指詞頻-逆文檔頻率,它屬于數值統計的范疇。使用TF-IDF,我們能夠學習一個詞對于數據集中的一個文檔的重要性。

TF-IDF的概念

TF-IDF有兩部分,詞頻和逆文檔頻率。首先介紹詞頻,這個詞很直觀,詞頻表示每個詞在文檔或數據集中出現的頻率。等式如下:

TF(t)=詞t在一篇文檔中出現的次數/這篇文檔的總詞數

第二部分——逆文檔頻率實際上告訴了我們一個單詞對文檔的重要性。這是因為當計算TF的時候,我們對每個詞賦予了同等的重要性,它出現得越多,它的TF就越高,如果它出現了100次,也許相比其他出現更少的詞,它并不攜帶那么多信息,因此我們需要賦予它們權重,決定每個詞的重要性。使用下面的等式得到IDF:

IDF(t)=(log10文檔的篇數/包含詞t文檔的篇數)

那么,計算TF-IDF的方法如下:

TF * IDF=(詞t在一篇文檔中出現的次數/這篇文檔的總詞數)* log10(文檔的篇數/包含詞t文檔的篇數)

應用

TF-IDF可以應用于如下場景:

通常可以使用TF-IDF進行文本數據分析,得到最準確的關鍵詞信息。

如果你正開發(fā)一個文本摘要應用,并正在進行統計,TF-IDF是生成摘要最重要的特征。

TF-IDF權重的變動常用于搜索引擎,以求出文檔的得分以及同用戶檢索的相關性。

文本分類應用將TF-IDF和BOW一起使用。

TextRank

TextRank 算法是一種用于文本的基于圖的排序算法。其基本思想來源于谷歌的 PageRank算法, 通過把文本分割成若干組成單元(單詞、句子)并建立圖模型, 利用投票機制對文本中的重要成分進行排序, 僅利用單篇文檔本身的信息即可實現關鍵詞提取、文摘。和 LDA、HMM 等模型不同, TextRank不需要事先對多篇文檔進行學習訓練, 因其簡潔有效而得到廣泛應用。

基于TextRank的關鍵詞提取

關鍵詞抽取的任務就是從一段給定的文本中自動抽取出若干有意義的詞語或詞組。TextRank算法是利用局部詞匯之間關系(共現窗口)對后續(xù)關鍵詞進行排序,直接從文本本身抽取。其主要步驟如下:

把給定的文本T按照完整句子進行分割,即

對于每個句子,進行分詞和詞性標注處理,并過濾掉停用詞,只保留指定詞性的單詞,如名詞、動詞、形容詞,即,其中是保留后的候選關鍵詞。

構建候選關鍵詞圖G = (V,E),其中V為節(jié)點集,由(2)生成的候選關鍵詞組成,然后采用共現關系(co-occurrence)構造任兩點之間的邊,兩個節(jié)點之間存在邊僅當它們對應的詞匯在長度為K的窗口中共現,K表示窗口大小,即最多共現K個單詞。

根據上面公式,迭代傳播各節(jié)點的權重,直至收斂。

對節(jié)點權重進行倒序排序,從而得到最重要的T個單詞,作為候選關鍵詞。

python實現:

# 導入庫
import jieba.analyse # 導入關鍵字提取庫
import pandas as pd # 導入pandas
import newspaper
# 讀取文本數據
# 獲取文章 銀保監(jiān)會出臺新政為例
article = newspaper.Article('https://finance.sina.com.cn/money/bank/bank_hydt/2019-02-25/doc-ihsxncvf7656807.shtml', language='zh')
# 下載文章
article.download()
# 解析文章
article.parse()
# 對文章進行nlp處理
article.nlp()
# nlp處理后的文章拼接
string_data = "".join(article.keywords)
# 關鍵字提取
def get_key_words(string_data, how=''):
  # topK:提取的關鍵字數量,不指定則提取全部;
  # withWeight:設置為True指定輸出詞對應的IF-IDF權重
  if how == 'textrank':
    # 使用TextRank 算法
    tags_pairs = jieba.analyse.textrank(string_data, topK=5, withWeight=True) # 提取關鍵字標簽
  else:
    # 使用TF-IDF 算法
    tags_pairs = jieba.analyse.extract_tags(string_data, topK=5, withWeight=True) # 提取關鍵字標簽
  tags_list = [] # 空列表用來存儲拆分后的三個值
  for i in tags_pairs: # 打印標簽、分組和TF-IDF權重
    tags_list.append((i[0], i[1])) # 拆分三個字段值
  tags_pd = pd.DataFrame(tags_list, columns=['word', 'weight']) # 創(chuàng)建數據框
  return tags_pd

keywords = get_key_words(string_data)
print("#####################TF-IDF####################")
print(keywords)

keywords_tr = get_key_words(string_data, how='textrank')
print("#####################textrank####################")
print(keywords_tr)

結果如下:

#####################TF-IDF####################
  word  weight
0 民營企業(yè) 0.327466
1  貸款 0.112652
2  融資 0.089557
3 商業(yè)銀行 0.084860
4  服務 0.072322
#####################textrank####################
  word  weight
0 民營企業(yè) 1.000000
1   要 0.553043
2  貸款 0.493173
3  融資 0.379846
4  服務 0.371273

以上這篇python數據分析:關鍵字提取方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 如何在django中添加日志功能

    如何在django中添加日志功能

    這篇文章主要介紹了django中添加日志功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • python獲取文件擴展名的方法

    python獲取文件擴展名的方法

    這篇文章主要介紹了python獲取文件擴展名的方法,涉及Python針對文件路徑的相關操作技巧,非常簡單實用,需要的朋友可以參考下
    2015-07-07
  • 如何使用python傳入不確定個數參數

    如何使用python傳入不確定個數參數

    這篇文章主要介紹了如何使用python傳入不確定個數參數,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • python實現目錄樹生成示例

    python實現目錄樹生成示例

    這篇文章主要介紹了python實現目錄樹生成示例,需要的朋友可以參考下
    2014-03-03
  • pandas預處理部分地區(qū)數據案例

    pandas預處理部分地區(qū)數據案例

    本文主要介紹了pandas預處理部分地區(qū)數據案例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-01-01
  • 詳解Python中常用的圖片處理函數的使用

    詳解Python中常用的圖片處理函數的使用

    這篇文章主要為大家介紹了一些在Python中常用的圖片處理函數的使用,例如split()、merge()、threshold()、applyColorMap()等,需要的可以參考一下
    2022-01-01
  • 200行python代碼實現2048游戲

    200行python代碼實現2048游戲

    這篇文章主要為大家詳細介紹了200行Python代碼實現2048游戲,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • Python Selenium截圖功能實現代碼

    Python Selenium截圖功能實現代碼

    這篇文章主要介紹了Python Selenium截圖功能實現代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • Python JSON常用編解碼方法代碼實例

    Python JSON常用編解碼方法代碼實例

    這篇文章主要介紹了Python JSON常用編解碼方法代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • python如何生成隨機n位數字與字母組合(創(chuàng)建隨機)

    python如何生成隨機n位數字與字母組合(創(chuàng)建隨機)

    這篇文章主要介紹了python如何生成隨機n位數字與字母組合(創(chuàng)建隨機),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08

最新評論