【发布时间】:2018-03-21 02:13:25
【问题描述】:
所以,我是 python 的超级新手,我有这个计算二元组的项目,而不使用任何 python 包。我必须使用 python 2.7。这是我到目前为止所拥有的。它需要一个文件 hello 然后给出类似的输出 {'你好','怎么样'} 5 .现在对于二元估计,我必须将 5 除以 Hello 的计数(“Hello”在整个文本文件中出现了多少次)。 我被困在任何帮助中!
f = open("hello.txt", 'r')
dictionary={}
for line in f:
for word in line.split():
items = line.split()
bigrams = []
for i in range(len(items) - 1):
bigrams.append((items[i], items[i+1]))
my_dict = {i:bigrams.count(i) for i in bigrams}
# print(my_dict)
with open('bigram.txt', 'wt') as out:
out.write(str(my_dict))
f.close()
【问题讨论】:
-
我需要二元估计......所有其他答案都只是给出二元。我需要它的概率。示例:计数(你好如何)/计数(你好)。你知道怎么做吗?
-
你需要一个 ngram 语言模型...
-
@alvas OP 正在尝试在不使用任何 NLP 包的情况下完成任务。我希望你把锁解开。
-
谢谢@Mohammed 这就是我想告诉他的。所有给定的解决方案只计算出现的二元组数,但不进行估计。这不像我没有尝试过。但我是 python 新手,得到了错误的答案。有些人就是不明白!
标签: python-2.7 nlp