有一些关于如何在 C# 中计算词频的好例子,但没有一个是全面的,我真的需要一个在 VB.NET 中。
我目前的方法仅限于每个频率计数一个单词。什么是最好的方法来改变这个,这样我就可以获得一个完全准确的词频列表?
wordFreq = New Hashtable()
Dim words As String() = Regex.Split(inputText, "(\W)")
For i As Integer = 0 To words.Length - 1
If words(i) <> "" Then
Dim realWord As Boolean = True
For j As Integer = 0 To words(i).Length - 1
If Char.IsLetter(words(i).Chars(j)) = False Then
realWord = False
End If
Next j
If realWord = True Then
If wordFreq.Contains(words(i).ToLower()) Then
wordFreq(words(i).ToLower()) += 1
Else
wordFreq.Add(words(i).ToLower, 1)
End If
End If
End If
Next
Me.wordCount = New SortedList
For Each de As DictionaryEntry In wordFreq
If wordCount.ContainsKey(de.Value) = False Then
wordCount.Add(de.Value, de.Key)
End If
Next
我更喜欢实际的代码片段,但通用的“哦,是的......使用这个并运行那个”也可以。