⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 samplediscretedistribution.m

📁 Continuous Profile Models (CPM) Matlab Toolbox.
💻 M
字号:
% function ind = sampleDiscreteDistribution(x)%% given a 1D discrete probability distribution, x, % take a sample from itfunction ind = sampleDiscreteDistribution(xx)if (issparse(xx))  xx=full(xx);endif (min(size(xx))>1)  error('x should be 1d');endif (sum(xx)==0)  ind=0;  return;end%normalize x in case it isn'tx = xx./sum(xx);if (sum(x)-1>100*eps)  warning('sum should equal 1'); keyboard;end%generate random number uniformly between 0 and 1:randNum = rand;%form cumulative distributioncumDistrib = cumsum(x);ind = min(find(cumDistrib>=randNum));if (isempty(ind)|ind<1)  warning('ind<1'); keyboard;  ind=0;end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -