如何结合sum、if和log来计算这个sum(-a1:a3*log(a1:a3,2))?

问题描述 投票:0回答:1

我想从A列的概率分布中计算出(信息源的)熵。

    A
1: 0.75
2: 0.25
3: 0

熵h等于:

h = -0.75*log2(0.75) -0.25*log2(0.25) = 0.812 (aprox)

我已经尝试了这样的事情。

=SUM(-A1:A3*if(A1:A3<>0,log(A1:A3,2)))

但没有用,我得到了 "找不到数组值 "的错误信息。

这是我第一次使用google sheets,对不起,如果我不清楚。

google-sheets sum google-sheets-formula entropy
1个回答
0
投票

你应该试试这个公式

=SUMPRODUCT(-A1:A3*IF(A1:A3<>0,LOG(A1:A3,2),A1:A3))
© www.soinside.com 2019 - 2024. All rights reserved.