利用jieba分詞進行詞頻統計


jieba分詞用法

jieba.cut(str,cut_all,HMM)
#cut_all=True全模式False精確模式,默認精確模式
jieba.cut_for_search(str,HMM)
#搜索引擎模式
#以上兩種分詞模式返回的都是一個可迭代的generator,可用for循環
jieba.lcut
jieba.lcut_for_search
#以上兩種直接返回list
jieba.suggest_freq(('a','b'),True)
#不會被切割的詞ab將會被切割
jieba.suggest_freq('ab',True)
#會被切割的詞ab不會再被切割

#對字典的鍵進行排序
dic = {'a':1,'c':4,'b':2}
sorted(dic.keys())

#對值進行排序
sorted(dic.items(),key=lambda item:item[1],reverse=True)

sorted函數按key值對字典排序

    先來基本介紹一下sorted函數,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse這三個參數。

    其中iterable表示可以迭代的對象,例如可以是dict.items()、dict.keys()等,key是一個函數,用來選取參與比較的元素,reverse則是用來指定排序是倒序還是順序,reverse=true則是倒序,reverse=false時則是順序,默認時reverse=false。

 

這里的d.items()實際上是將d轉換為可迭代對象,items()方法將字典的元素轉化為了元組,而這里key參數對應的lambda表達式的意思則是選取元組中的第二個元素作為比較參數(如果寫作key=lambda item:item[0]的話則是選取第一個元素作為比較對象,也就是key值作為比較對象。lambda x:y中x表示輸出參數,y表示lambda函數的返回值),所以采用這種方法可以對字典的value進行排序。注意排序后的返回值是一個list,而原字典中的名值對被轉換為了list中的元組。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM