Hello,
I'm new to Matlab and trying to use it to estimate standard deviation of distribution from pdf of a distribution. I have random values and probability for these value like to following:
Values (Prob) 10 (0.1) 11 (0.2) 12 (0.4) 13 (0.05) 14 (0.05) 15 (0.2)
Is there any function/code to estimate the standard distribution? Thanks.

 채택된 답변

Star Strider
Star Strider 2014년 7월 18일

0 개 추천

These are termed a weighted mean and standard deviation:
% % % References:
% % % https://en.wikipedia.org/wiki/Weighted_standard_deviation#Weighted_sample_variance
% % % http://itl.nist.gov/div898/software/dataplot/refman2/ch2/weightsd.pdf
%
% 10 (0.1) 11 (0.2) 12 (0.4) 13 (0.05) 14 (0.05) 15 (0.2)
X = 10:15; % Data
W = [0.1 0.2 0.4 0.05 0.05 0.2]; % Weights
N = length(X);
Wmean = X*W'/sum(W); % Weighted mean
Wstd = sqrt((sum(W.*(X - Wmean).^2)/N) / ((N-1)*sum(W)/N)); % Weighted std

댓글 수: 3

zorra2578
zorra2578 2014년 7월 18일
Thank you very much.
Star Strider
Star Strider 2014년 7월 18일
My pleasure!
Xiao Yang
Xiao Yang 2020년 4월 11일
I don't think the first "/N" should be there in the calculation of Wstd

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Probability Density Functions에 대해 자세히 알아보기

질문:

2014년 7월 18일

댓글:

2020년 4월 11일

Community Treasure Hunt

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

Start Hunting!

Translated by