比方說,我有以下字符串:沒有空格和特殊字符的字符串中的詞頻?
"hello&^uevfehello!`.<hellohow*howdhAreyou"
我怎麼會去計算的是它的子英語單詞的頻率是多少?在這種情況下,我希望的結果,例如:
{'hello': 3, 'how': 2, 'are': 1, 'you': 1}
我搜遍這是類似於此之前的問題,但我真的不能找到任何工作。密切的解決方案似乎使用正則表達式,但它也不起作用。這可能是因爲我錯誤地實現它,因爲我不熟悉它是如何工作的。
How to find the count of a word in a string? 這是最後的答案
from collections import *
import re
Counter(re.findall(r"[\w']+", text.lower()))
我也試着創造一個非常壞的作用,通過串在連續的字母每一個可能的安排迭代(最多8個字母左右最大值)。有這樣做的問題是
1)它的方式長於應該和
2)它增加了多餘的話。例如:如果「hello」在字符串中,「hell」也會被找到。
我不是很熟悉正則表達式,這可能是正確的做法。
要計算英文單詞的頻率,這是不夠的。你將不得不使用類似[ntlk](http://www.ntlk.org)的東西,即使如此,它也會很難,因爲你沒有詞的分隔符。 – msvalkon
你有識別英文單詞的功能或字典嗎? –
我有一個英文單詞列表,我正在比較部分字符串,但它並沒有真正幫助很多。 – Howcan