任務:
第1步:輸出單個檔案中的前 n 個最常出現的英語單詞。
功能1:輸出檔案中所有不重複的單詞,按照出現次數由多到少排列,出現次數同樣多的,以字典序排列。
功能2: 指定檔案目錄,對目錄下每乙個檔案執行統計的操作。
功能3:指定檔案目錄,是會遞迴遍歷目錄下的所有子目錄的檔案進行統計單詞的功能。
功能4:輸出出現次數最多的前 n 個單詞,
例如, 提示統計統計前多少名:輸入10。 就是輸出最常出現單詞的前 10 名。 當沒有指明數量的時候,我們預設列出所有單詞的頻率。
第2步:第二步: 支援 stop words
在一本**裡, 頻率出現最高的單詞一般都是 "a", "it", "the", "and", "this", 這些詞, 可以做乙個 stop word 檔案 (停詞表), 在統計詞彙的時候,跳過這些詞。 我們把這個檔案叫 "stopwords.txt" file.
第三步: 想看看常用的短語是什麼, 怎麼辦呢?
先定義短語:"兩個或多個英語單詞, 它們之間只有空格分隔". 請看下面的例子:
hello world //這是乙個短語
hello, world //這不是乙個短語
同一頻率的片語, 按照字典序來排列。
第四步:把動詞形態都統一之後再計數。
想找到常用的單詞和短語,但是發現英語動詞經常有時態和語態的變化,導致同乙個詞,同乙個短語卻被認為是不同的。 怎麼解決這個問題呢?
動詞原型 動詞變形1 動詞變形2... ,詞之間用空格分開。
e.g. 動詞 take 有下面的各種變形:take takes took taken taking
我們希望在實現上面的各種功能的時候,有乙個選項, 就是把動詞的各種變形都歸為它的原型來統計。
功能 支援動詞形態的歸一化
思路:首先老師給我們具體的功能要求
功能1:輸出檔案中所有不重複的單詞,按照出現次數由多到少排列,出現次數同樣多的,以字典序排列。
功能2: 指定檔案目錄,對目錄下每乙個檔案執行統計的操作。
功能3:指定檔案目錄,是會遞迴遍歷目錄下的所有子目錄的檔案進行統計單詞的功能。
功能4:輸出出現次數最多的前 n 個單詞,
續集,所以很多功能前面都有了,接下來指定檔案目錄,要判斷自己輸入的是不是正確的檔案目錄,
**:
string name =file.getname();if(!name.trim().tolowercase().endswith(".txt"))
if(!file.isfile())
這樣就可以完成大部分的功能了。
統計文章中單詞出現的次數(續)
符號問題的處理 void filtrate word string word 處理字串中的標點符號 順便把單詞中的大小寫也統一一下,很簡單 void strip cap string word 將單詞中的大寫字母轉化成小寫字母 兩處處理都用到string類的函式find first of 有幾個過載...
mysql 統計單詞 Spark單詞統計示例
在spark字數統計示例中,將找出指定檔案中存在的每個單詞的出現頻率。在這裡,我們使用scala語言來執行spark操作。執行spark字數計算示例的步驟 在此示例中,查詢並顯示每個單詞的出現次數。在本地計算機中建立乙個文字檔案並在其中寫入一些文字。檢查sparkdata.txt檔案中寫入的文字。c...
統計單詞個數
輸入 檔名稱 sum123.cpp 作 者 林海雲 完成日期 2014年12月16日 版 本 號 v2.0 問題描述 統計各陣列中單詞的個數 程式輸入 程式輸出 統計結果 include includeusing namespace std int pwordnum char str int mai...