코드의 출력 값은 cnt [ 'yellow'] = 0이지만 코드에 주어진 수식을 적용한 후 예상 값은 (0 +1)/(6 + (1 * 3))이어야합니다. ,예상치 못한 파이썬 카운터 값
from collections import Counter
cnt = Counter()
sm = 1
for word in ['red', 'blue', 'red', 'green', 'blue', 'blue']:
cnt[word] += 1
s = sum(cnt.values())
print(s)
c = len(cnt)
print(c)
for k,v in cnt.items():
cnt[k] = (cnt[k] + sm)/(s + (sm *c))
print(cnt['yellow'])
이 있습니까 너 확실해. 파이썬 3.5? – user2357112
사실, '노란색'은 입력에 전혀 없습니다. 기본 카운트를받습니다. 여기서'cnt [ ']'(cnt [k] + sm)/(s + (sm * c))'계산을'cnt [ 'yellow']'에 적용하는 것은 아무것도 없다. – user2357112
이 기본 0을이 계산으로 양의 값으로 변경하고 싶습니다. 할 수있는 것이 있습니다. –