成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python 文本數據預處理實踐

開發 后端
在進行數據分析與可視化之前,得先處理好數據,而很多時候需要處理的都是文本數據,本文總結了一些文本預處理的方法。

[[390009]]

 在進行數據分析與可視化之前,得先處理好數據,而很多時候需要處理的都是文本數據,本文總結了一些文本預處理的方法。

將文本中出現的字母轉化為小寫

  1. input_str = ""
  2. There are some people who think love is sex  
  3. And marriage 
  4. And six o'clock-kisses 
  5. And children, 
  6. And perhaps it is
  7. Miss Lester. 
  8. But do you know what I think? 
  9. I think love is a touch and yet not a touch 
  10. ""
  11. input_str = input_str.lower() 
  12. print(input_str) 

結果如下:

刪除或者提取文本中出現的數字

如果文本中的數字與文本分析無關的話,那就刪除這些數字。

  1. import re 
  2.  
  3. input_str = 'Hello Python123 666 Hi jupyter notebook 1111' 
  4. result = re.sub(r'\d+''', input_str) 
  5. print(result) 

結果如下:

而在有些情況下,比如獲取的數據中,招聘崗位信息里薪資是 15K 這樣的,商品購買信息里商品購買人數是 8500+ 人購買了此商品,這時我們需要從中提取出數字。

  1. input_str = '薪資:15K 8500+人付款 3.0萬+人付款' 
  2. result = re.findall("-?\d+\.?\d*e?-?\d*?", input_str) 
  3.  
  4. print(result) 

結果如下:

濾除文本中標點符號

  1. import re 
  2.  
  3. input_str = """This &is [an] example? \葉庭云<< 1""!。。;11???【】>>1 *yetingyun/p:?| {of} string. with.? punctuation!!!!"""  
  4. s = re.sub(r'[^\w\s]''', input_str) 
  5. print(s) 

結果如下:

可以看到文本中亂七八糟的符號都被濾除了,用正則表達式過濾文本中的標點符號,如果空白符也需要過濾,可以使用 r'[^\w]'。原理很簡單:在正則表達式中,\w 匹配字母或數字或下劃線或漢字(具體與字符集有關),^\w表示相反匹配。

刪除兩端無用的空格

  1. input_str = "   \t    yetingyun   \t    " 
  2. input_str = input_str.strip() 
  3. input_str 

結果如下:

中文分詞,濾除停用詞和單個詞

  1. # 從Github下載停用詞數據  https://github.com/zhousishuo/stopwords 
  2. import jieba 
  3. import re 
  4.  
  5. # 讀取用于測試的文本數據  用戶評論 
  6. with open('comments.txt'as f: 
  7.     data = f.read() 
  8.  
  9. # 文本預處理  去除一些無用的字符   只提取出中文出來 
  10. new_data = re.findall('[\u4e00-\u9fa5]+', data, re.S) 
  11. new_data = "/".join(new_data) 
  12.  
  13. # 文本分詞  精確模式 
  14. seg_list_exact = jieba.cut(new_data, cut_all=False
  15.  
  16. # 加載停用詞數據 
  17. with open('stop_words.txt', encoding='utf-8'as f: 
  18.     # 獲取每一行的停用詞 添加進集合 
  19.     con = f.read().split('\n'
  20.     stop_words = set() 
  21.     for i in con: 
  22.         stop_words.add(i) 
  23.  
  24. # 列表解析式  去除停用詞和單個詞 
  25. result_list = [word for word in seg_list_exact if word not in stop_words and len(word) > 1] 
  26. result_list 

結果如下:

首先讀取用于測試的文本數據,該數據是爬取的商品評論,這一類數據通常有很多無意義的字詞和符號,通過正則表達式濾除掉無用的符號,只提取出中文出來。使用 jieba 庫進行文本分詞,加載停用詞數據到集合,然后一行列表解析式濾除停用詞和單個詞,這樣效率很高。停用詞數據可以下載一些公開的,再根據實際文本處理需要,添加字詞語料進去,使濾除效果更好。

Github下載停用詞數據:https://github.com/zhousishuo/stopwords

SnowNLP是一個 Python 寫的類庫,可以方便的處理中文文本內容,是受到了 TextBlob 的啟發而寫的,由于現在大部分的自然語言處理庫基本都是針對英文的,于是寫了一個方便處理中文的類庫,并且和 TextBlob 不同的是,這里沒有用NLTK,所有的算法都是自己實現的,并且自帶了一些訓練好的字典。注意本程序都是處理的 unicode 編碼,所以使用時請自行 decode 成 unicode 編碼。

使用 SnowNLP 處理中文文本數據非常方便,以詞性標注和關鍵詞提取為例:

  1. from snownlp import SnowNLP 
  2.  
  3. word = u'今天天氣好 這個姑娘真好看' 
  4. s = SnowNLP(word) 
  5. print(s.words)        # 分詞 
  6. print(list(s.tags))   # 詞性標注 

  1. from snownlp import SnowNLP 
  2.  
  3. text = u''
  4. 自然語言處理是計算機科學領域與人工智能領域中的一個重要方向。 
  5. 它研究能實現人與計算機之間用自然語言進行有效通信的各種理論和方法。 
  6. 自然語言處理是一門融語言學、計算機科學、數學于一體的科學。 
  7. 因此,這一領域的研究將涉及自然語言,即人們日常使用的語言, 
  8. 所以它與語言學的研究有著密切的聯系,但又有重要的區別。 
  9. 自然語言處理并不是一般地研究自然語言, 
  10. 而在于研制能有效地實現自然語言通信的計算機系統, 
  11. 特別是其中的軟件系統。因而它是計算機科學的一部分。 
  12. ''
  13.  
  14. s = SnowNLP(text) 
  15. print(s.keywords(limit=6))        # 關鍵詞提取 

本文轉載自微信公眾號「修煉Python」,可以通過以下二維碼關注。轉載本文請聯系修煉Python公眾號。

 

責任編輯:武曉燕 來源: 修煉Python
相關推薦

2020-12-23 11:08:10

Python代碼文本

2020-11-06 17:42:02

Python開發工具

2024-12-20 13:00:00

Python文本清洗預處理

2021-11-03 09:00:00

深度學習自然語言機器學習

2020-11-06 17:20:14

PythonBAT代碼

2019-01-28 17:42:33

Python數據預處理數據標準化

2023-11-07 08:33:08

2016-12-14 14:50:26

CSS預處理語言模塊化實踐

2025-03-07 08:00:00

數據數據集集神經網絡數據預處理

2016-12-20 16:07:13

Python數據預處理

2016-12-18 15:03:57

Python Scikit Lea數據

2023-02-08 07:44:56

Pandas數據分析

2023-11-27 13:58:00

數據預處理數據標準化

2022-08-30 09:24:47

數據算法

2018-03-13 12:51:12

Python數據函數

2018-06-07 15:58:52

Python函數數據

2021-07-17 22:41:53

Python數據技術

2011-04-08 14:45:08

文本數據Oracle

2019-02-22 08:25:19

數據清洗預處理機器學習

2018-04-04 10:19:32

深度學習
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美日韩一区精品 | 欧美成人h版在线观看 | www国产成人免费观看视频,深夜成人网 | 99综合网| 国产精品久久久久久久粉嫩 | 欧美电影一区 | 久久高清| 日韩视频 中文字幕 | 青青久久av北条麻妃海外网 | 午夜欧美日韩 | 国产成人福利在线观看 | 一区二区三区欧美 | 日韩av电影院 | 99日韩| 一区二区三区在线免费看 | 国产一二三区在线 | 久久国| 欧美国产免费 | 国产精品精品视频一区二区三区 | 日韩一区二区三区视频 | 免费一级黄色电影 | 精品亚洲一区二区三区 | 午夜精品久久久 | 全免一级毛片 | 国产激情一区二区三区 | 天天插天天操 | 久久黄色网 | 欧美日韩高清在线一区 | 色视频一区二区 | 涩色视频在线观看 | 人人干人人超 | 精品一区精品二区 | www.av在线 | 国产精品国产精品 | 亚洲一二三在线 | 亚洲巨乳自拍在线视频 | 久久综合久 | 又爽又黄axxx片免费观看 | 国产乱码精品一区二区三区忘忧草 | av一区在线观看 | 91在线电影 |