MATLAB Answers

How to integral a pdf of a continuous random variable to calculate its entropy

조회 수: 5(최근 30일)
QIAO WANG
QIAO WANG 22 Feb 2021
댓글: QIAO WANG 24 Feb 2021
Hi guys,
I'm trying to figure out how to get the entropy of a probability distribution. It's the standard differential entropy and the formula is: , where is the probability denstiy function.
I have referred to integral function q = integral(fun,xmin,xmax) I'm confused how to define this fun? For instance, I'm dealing with Beta distribution and I have used the following code for its pdf. However, this y is just the evaluated values of x, not exactly a fun. I suppose I can't use this y directly. So, is there a way that I can create or transfer y to a fun that I can apply with integral? Please help me with it. Thanks in advance!
pd = makedist('beta','a',50,'b',40)
x = linspace(0,1,10000);
y = pdf(pd,x);

채택된 답변

Jeff Miller
Jeff Miller 22 Feb 2021
편집: Jeff Miller 22 Feb 2021
Try this:
pd = makedist('beta','a',50,'b',40);
fun = @(x) pdf(pd,x) .* log( pdf(pd,x) );
H = -integral(fun,0,1)

추가 답변(0개)

제품


릴리스

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by