複合數據類型,英文詞頻統計

1.列表,元組,字典,集合分別如何增刪改查及遍歷。python

(1)列表之增:append(增補)直接把新數據放到列表的最後一項。數組

          insert(插入)比append更靈活,能夠插到任何app

          extend能夠將一個集合中的元素一一添加到列表中ide

(2)列表之刪:remove經過.remove()刪除指定內容,不能直接靠下標實現刪除。工具

          pop經過下標來刪除,而且能夠返回這個刪除的元素。this

(3)列表之改:直接對指定下標的元素賦值便可編碼

(4)列表之查:in/not in/index/count
spa

 

元祖:元祖沒法進行增刪改。code

(1)元祖之查:index /countblog

字典: 

(1)字典之增:直接經過鍵值對賦值便可添加。

(2)字典之刪:pop經過下標來刪除對應的鍵值對。

(3)字典之改:直接對已有的鍵值對進行賦值。

(4)字典之查:print(Dict['time']) # 直接查詢'time'對應的值,此種方式若該key不存在,則報錯

                           print(Dict.get('time')) # 功能同上,但若該key不存在會返回None,而不是報錯

(5)字典之遍歷:print(Dict.keys()) # 遍歷key.

           print(Dict.values()) # 遍歷value.

           print(Dict.items()) # 遍歷鍵值對.

集合: 

(1)集合之增:s.add('新增key'),新增的元素也許會在集合內的任何位置,每次執行結果也不盡相同!

(2)集合之刪:s.pop() # 刪除首個元素 誰在最前面刪除誰 

 

2.總結列表,元組,字典,集合的聯繫與區別

列表的特色就是:可重複,類型可不一樣。類型不一樣也是跟數組最本質的區別了。列表用「[]」表示。有序。

元組和列表在結構上沒有什麼區別,惟一的差別在於元組是隻讀的,不能修改。元組用「()」表示。有序。

字典鍵值對用冒號分割,而各個對用逗號分割,全部這些都包括在花括號中。鍵/值對是無序的。

集合只包含鍵,而沒有對應的值,包含的數據不重複且無序。

 

3.詞頻統計

  • 1.下載一長篇小說,存成utf-8編碼的文本文件 file

    2.經過文件讀取字符串 str

    3.對文本進行預處理

    4.分解提取單詞 list

    5.單詞計數字典 set , dict

    6.按詞頻排序 list.sort(key=lambda),turple

    7.排除語法型詞彙,代詞、冠詞、連詞等無語義詞

    • 自定義停用詞表
    • 或用stops.txt
f = open('novel.txt','r', encoding='UTF-8')
str = f.read()
f.close()
text=str.lower()
sep = ",.!?—"
for s in sep:
    text = text.replace(s,' ')
text = text.split();
dict={}
for word in text:
    dict[word] = text.count(word)
exclude={'the','i','mr','but','by','said','be','were','which','and','of','to','a','in','was','she','her','had','that','it','with','from','which','this','an','on','he','for','you','as','his','not','at','mrs','my','is','there','who','have'}#定義數組
for i in exclude:
    if i in dict.keys():
        dict.pop(i)
word=list(dict.items())
word.sort(key=lambda x:x[1],reverse=True)
print(word)
import pandas as pd
pd.DataFrame(data=word).to_csv('novel.csv',encoding='utf-8')
統計詞頻

 

 

 

8.輸出TOP(20)

  • 9.可視化:詞雲

 排序好的單詞列表word保存成csv文件

import pandas as pd
pd.DataFrame(data=word).to_csv('big.csv',encoding='utf-8')

線上工具生成詞雲:
https://wordart.com/create

相關文章
相關標籤/搜索