pevel

Untitled

Oct 16th, 2022
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.18 KB | None | 0 0
  1.  
  2.  
  3. private static Dictionary<string, string> GetNGramms(List<List<string>> text, int n)
  4. {
  5. var result = new Dictionary<string, Dictionary<string, int>>();
  6. foreach (var sentence in text)
  7. for (var wordIterator = 0; wordIterator < sentence.Count - n + 1; wordIterator++)
  8. {
  9. var key = "";
  10. for (var keyIterator = wordIterator; keyIterator < wordIterator + n - 1; keyIterator++)
  11. {
  12. key += sentence[keyIterator];
  13. if (keyIterator != wordIterator + n - 1)
  14. key += " ";
  15. }
  16.  
  17. key = key.Substring(0, key.Length - 1);
  18.  
  19. if (!result.ContainsKey(key))
  20. result[key] = new Dictionary<string, int>();
  21. if (!result[key].ContainsKey(sentence[wordIterator + n - 1]))
  22. result[key][sentence[wordIterator + n - 1]] = 0;
  23. result[key][sentence[wordIterator + n - 1]] += 1;
  24. }
  25.  
  26. return GetFinalNGrammsListWithoutFrequncy(result);
  27. }
Advertisement
Add Comment
Please, Sign In to add comment