資源簡介
十九大報告詞頻分析.zip

代碼片段和文件信息
function?wordcountchinese
clc;
clear;
report=fileread(‘reportchinese.txt‘);?%讀入中文報告,事先已放在工作區
%%?dictionary.mat是一個我事先準備好的列向量
%其中dict是14636*1的字典列向量,從網上下載的官方語料庫轉換得到的
load?dictionary.mat;
Maxlen=max(cellfun(@lengthdict));?%最大詞長,結果是10
%%?按標點初步分詞
cut=‘[\,\。\、\;\:\!\?\“\”\‘\’\(\)\《\》\<\>\……\·]‘;?%標點符號的正則表達式
F=regexp(reportcut‘split‘)‘;?%轉置,變成3131*1的列向量
%?此時,待分析的句集F和詞典都已就緒
%%?算法原理
%?首先判斷是否為有效句:句長是否大于0。小于0的不操作,相當于跳過
%?若是有效句,計算句長和最大詞長Maxlen的最小值maxlen。待選字串長度不能大于該長度
%?從maxlen長度開始,取出待選字串
%?匹配,成功就輸出,標記。若成功,平移maxlen個單位;若不成功,平移1個單位
%?選出下一個待選字串再匹配,重復操作,直到移動到句長以外
%?如果上一個長度匹配成功,那么就不用再匹配了,該句跳過;如果meet==0,重復上一步操作
%?長度maxlen減到1,也要匹配,因為詞庫中有一個字的詞;maxlen==0是終止信號。
%%?最大匹配法進一步分詞
sentence=[];?%是粗分后F中的每一個元素
word=[];
words={};
k=1;
for?i=1:length(F)?%遍歷F
????sentence=cell2mat(F(i1));?%把cell轉換成字符串
????sentence_len=length(sentence);?%求出句長
????meet=0;?%更新初始狀態
????
????if(sentence_len>0)?%有效句
????????maxlen=min(Maxlensentence_len);
????????while(maxlen>0)
????????????start=1;
????????????while((start+maxlen)<=sentence_len)??%索引不能移動到句子外面
????????????????word=sentence(start:start+maxlen);
????????????????if(ismember(worddict))%如果匹配成功
????????????????????meet=1;
????????????????????words(k)=cellstr(word);
????????????????????k=k+1;
????????????????????start=start+maxlen;?%移動maxlen個單位再匹配
????????????????else
????????????????????start=start+1;?%移動一個單位再匹配
????????????????end
????????????end
????????????%已經移動到句子外面了
????????????if(meet==0)
????????????????maxlen=maxlen-1;
????????????else
????????????????break;
????????????end
????????end
????end
????%無效句,句長為0,不處理,直接跳過
end
%%?排序處理
rank?=?tabulate(words);?%rank是三列向量,包括名稱,出現次數和百分比
ANS=sortrows(rank-2);?%只根據第二列進行排序?-2表示降序
xlswrite(‘resultschinese‘ANS(1:501:3));%輸出為excel文件?由于詞語將近1777個,因此只輸出前100個
end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-05-03?14:49??中文\
?????文件???????98500??2017-11-28?15:41??中文\dictionary.mat
?????文件???????65054??2017-11-28?15:46??中文\reportchinese.txt
?????文件???????30208??2017-11-29?00:34??中文\resultschinese.xls
?????文件????????2301??2017-12-04?18:08??中文\wordcountchinese.m
?????文件?????1608192??2017-11-28?15:35??中文\中文語料庫.xls
?????文件??????????41??2017-11-28?15:37??中文\語料庫下載地址.txt
?????目錄???????????0??2018-05-03?14:49??英文\
?????文件??????165344??2017-11-27?22:27??英文\reportfulltext.txt
?????文件??????270848??2017-11-27?23:09??英文\results.xls
?????文件?????????729??2017-11-27?23:07??英文\wordcount.m
?????文件??????449013??2017-11-27?22:25??英文\Xi_Jinping‘s_report_at_19th_CPC_National_Congress.pdf
?????文件??????????68??2017-11-27?22:25??英文\十九大報告官方下載地址.txt
- 上一篇:GC算法和收集器.pdf
- 下一篇:miku+Steam萌化
評論
共有 條評論