I am trying to plot for binary entropy

4 vues (au cours des 30 derniers jours)
Sam17
Sam17 le 31 Jan 2018
Commenté : yair mazal le 17 Mar 2021
I am trying to plot binary entropy and the value of entropy is coming as NaN but, it shouldn't be NaN, it should be 0.
Here's my code:
%Question No 1
%H(p) versus probability of binary logic 1 (p)
p= 0:0.5:1
h= p.*(abs(log2(p)))+ (1-p).*(abs(log(1-p)))
plot(p,h);
  1 commentaire
yair mazal
yair mazal le 17 Mar 2021
Obviously you also miss the "2" in the second call to the log function. You're using log in the base of 10.

Connectez-vous pour commenter.

Réponses (1)

Walter Roberson
Walter Roberson le 31 Jan 2018
If your equations are correct then nan is the correct answer for p values of 0 and p values of 1.
Suppose p = 0. Then log2(p) is -infinity. p.*log2(p) is 0 * -infinity which is nan.
For p=1 something similar takes place.

Catégories

En savoir plus sur Log Plots dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by