はじめに
正規分布の累積分布を計算しようと思ったら、
有料のStaticsToolboxにしか関数が無かったので、
自分で実装しました(笑)
Statistics Toolbox Documentation - MathWorks 日本
必要になったら少しづつ追加していく予定です。
正規分布の確率密度関数
下記の関数と同じ動きをするはずです。
正規確率密度関数 - MATLAB normpdf - MathWorks 日本
function pdf=normpdf(x,mu,sigma) % 正規分布の確率密度関数PDFを計算する関数 % StaticsToolBoxのnormpdf関数と同じ機能にしたつもり % 参照: % 正規分布 - MATLAB & Simulink - MathWorks 日本 % http://jp.mathworks.com/help/stats/normal-distribution.html if nargin==1 mu=0; sigma=1; elseif nargin==2 sigma=1; end prefix=1/sqrt(2*pi)/sigma; pdf=prefix.*exp(-(x-mu).^2./(2*sigma^2));
正規分布の累積分布関数
下記の関数と同じ動きをするはずです。
正規累積分布関数 - MATLAB normcdf - MathWorks 日本
function cdf=normcdf(x,mu,sigma) %正規累積分布関数CDFと計算する関数 %StatticsToolBoxのnormcdf関数と同じ機能にしたつもり %参照: %正規累積分布関数 - MATLAB normcdf - MathWorks 日本 %http://jp.mathworks.com/help/stats/normcdf.html if nargin==1 mu=0; sigma=1; elseif nargin==2 sigma=1; end cdf=[]; resolution=10000; for i=1:length(x) xt = 0 : (x(i) / resolution) : x(i); cdf= [cdf sum(normpdf(xt,mu,sigma)* x(i)/resolution)]; end
統計学用MATLABライブラリ群
下記のGithubリポジトリに、すべての関数群が置いてあります。
MATLABRobotics/CommonTools/StaticsToolbox at master · AtsushiSakai/MATLABRobotics
参考資料
MyEnigma Supporters
もしこの記事が参考になり、
ブログをサポートしたいと思われた方は、
こちらからよろしくお願いします。