-3
텍스트의 엔트로피를 찾아야합니다.엔트로피로 파이썬에서 텍스트 사용
섀넌 엔트로피를 사용하고 싶습니다.
내 입력은 책의 텍스트 문서 (모든 단어)와 빈도로 구성된 사전입니다. 출력은 모든 단어의 관측 확률에 대한 엔트로피 여야합니다. 지금 내 코드는 다음과 같다 :
BOE는 사전 단어와 주파수로 구성된 코드가 작동하도록 내가 먼저 문자열로 그것을 TRANSFROM입니다import math
def shannon(string):
prob = [ float(string.count(c))/len(string) for c in dict.fromkeys(list(string)) ]
entropy = sum([ p * math.log(p)/math.log(2.0) for p in prob ])
return entropy
. 그러나 이것이 올바른 경우 엔트로피인지 확실하지 않습니다.
당신의 함수는'word_map'을 사용하지 않습니다. –
모든 작업을 다시하고 계속 실행을 반복합니다. 예 : 'boe'는'dict'이고,'str'으로 변환 한 다음'list'로 변환 한 다음'dict'으로 되돌립니다. 그게 뭐야? –
나는 당신이하고 싶은 일, 당신의 의견이 무엇인지, 어떻게 사용하고 싶은지에 대해 신중하게 생각할 필요가 있다고 생각합니다. 그런 다음 (다시 신중하게) 생각을 코드에 작성하십시오. 네가 여기에있는 것은 경계선이 횡설수설하는 것이다. –