python中文詞頻統計
1. 如何用python和jieba分詞,統計詞頻
#!python3
#-*-coding:utf-8-*-
importos,codecs
importjieba
fromcollectionsimportCounter
defget_words(txt):
seg_list=jieba.cut(txt)
c=Counter()
forxinseg_list:
iflen(x)>1andx!=' ':
c[x]+=1
print('常用詞頻度統計結果')
for(k,v)inc.most_common(100):
print('%s%s%s%d'%(''*(5-len(k)),k,'*'*int(v/3),v))
if__name__=='__main__':
withcodecs.open('19d.txt','r','utf8')asf:
txt=f.read()
get_words(txt)
2. 如何用python對文章中文分詞並統計詞頻
1、全局變數在函數中使用時需要加入global聲明
2、獲取網頁內容存入文件時的編碼為ascii進行正則匹配時需要decode為GB2312,當匹配到的中文寫入文件時需要encode成GB2312寫入文件。
3、中文字元匹配過濾正則表達式為ur'[\u4e00-\u9fa5]+',使用findall找到所有的中文字元存入分組
4、KEY,Value值可以使用dict存儲,排序後可以使用list存儲
5、字元串處理使用split分割,然後使用index截取字元串,判斷哪些是名詞和動詞
6、命令行使用需要導入os,os.system(cmd)
3. 求看python 統計中文詞頻的代碼,有一個地方不懂 求大神
首先要說明一個概念:gbk編碼里一個中文字元的『長度』是2。
str = '中國' #gbk編碼
要取得'中'這個字元,需要用分片str[0:2],而不是索引str[0]。
以z4為例,下面這些代碼的效果是這樣的。
x = '同舟共濟與時俱進艱苦奮斗'
i+= z4.findall(x) # 返回['同舟共濟','與時俱進', '艱苦奮斗']
i+= z4.findall(x[2:]) # 返回['舟共濟與', '時俱進艱']
i+= z4.findall(x[4:]) # 返回['共濟與時', '俱進艱苦']
i+= z4.findall(x[6:]) # 返回['濟與時俱', '進艱苦奮']
目的是取得所有連續4字中文字元串。
4. Python詞頻統計問題
#下載一文到words.txt,內容為(stumldsmlstustueezkzwxjZkzWxj)
File="words.txt"
number_list=[]
withopen(File)asf:
forlineinf:
number_list.extend(str(i)foriinline.split())
foriteminset(number_list):
L=[item,number_list.index(item),number_list.count(item)]
print(L)#單詞首次出現的位置詞頻
withopen('Q1.txt','a')asF:
F.writelines(str(L))
5. 用Python統計詞頻
def statistics(astr):
# astr.replace("\n", "")
slist = list(astr.split("\t"))
alist = []
[alist.append(i) for i in slist if i not in alist]
alist[-1] = alist[-1].replace("\n", "")
return alist
if __name__ == "__main__":
code_doc = {}
with open("test_data.txt", "r", encoding='utf-8') as fs:
for ln in fs.readlines():
l = statistics(ln)
for t in l:
if t not in code_doc:
code_doc.setdefault(t, 1)
else:
code_doc[t] += 1
for keys in code_doc.keys():
print(keys + ' ' + str(code_doc[keys]))
6. python統計詞頻並進行可視化顯示
你去echart官網去看,有100多種可視化圖形可供你選擇。統計詞頻也有的,你需要做的就是查看example code再把code里data改成你的data即可。當然需要import echart。
7. 如何用python統計一個txt文件中某個中文詞語出現的次數
8. python里如何快速統計 詞頻 現在有個文件 data.txt 裡面有1萬多行 每行都
1. N^2時間復雜度是怎麼算出來的?N指什麼?
2. 對於多位數,比如 76,我們把它當做兩個數字 7 和 6 這樣來統計詞頻?