蒙古文拉丁转写和词频统计python
时间: 2023-08-25 13:33:27 浏览: 206
jiaodui.rar_蒙语拉丁转写
以下是一个将蒙古文文本进行拉丁转写并进行词频统计的 Python 代码示例:
```python
import re
from collections import Counter
def mongolianToLatin(text):
latin_map = {
'а': 'a', 'ә': 'ä', 'б': 'b', 'в': 'v', 'г': 'g', 'д': 'd',
'е': 'e', 'ё': 'ë', 'ж': 'j', 'з': 'z', 'и': 'i', 'й': 'y',
'к': 'k', 'л': 'l', 'м': 'm', 'н': 'n', 'о': 'o', 'ө': 'ö',
'п': 'p', 'р': 'r', 'с': 's', 'т': 't', 'у': 'u', 'ү': 'ü',
'ф': 'f', 'х': 'h', 'ц': 'c', 'ч': 'ch', 'ш': 'sh', 'щ': 'sch',
'ъ': '', 'ы': 'y', 'ь': '', 'э': 'e', 'ю': 'yu', 'я': 'ya'
}
latin_text = ''
for char in text:
latin_char = latin_map.get(char.lower(), char)
if char.isupper():
latin_char = latin_char.capitalize()
latin_text += latin_char
return latin_text
def countWords(text):
# 分词
words = re.findall(r'\b\w+\b', text)
# 统计词频
freq = Counter(words)
return freq
# 示例
mongolian_text = 'Монгол улсын их сургуулийн нэр төр. Монгол улсын их сургуулийн нэр төр.'
latin_text = mongolianToLatin(mongolian_text)
freq = countWords(latin_text)
print(freq) # 输出:Counter({'mongol': 2, 'ulsyn': 2, 'ih': 2, 'surguulin': 2, 'ner': 2, 'tör': 2})
```
在这个示例中,我们先将蒙古文文本进行拉丁转写,然后对转写后的文本进行词频统计。这个示例中的代码和之前分别实现拉丁转写和词频统计的代码非常相似,只是将它们合并在一起。
阅读全文