不放回随机样本:有重量不放回随机样本-matlab开发

时间:2024-06-19 06:17:06
【文件属性】:

文件名称:不放回随机样本:有重量不放回随机样本-matlab开发

文件大小:1KB

文件格式:ZIP

更新时间:2024-06-19 06:17:06

matlab

% 有重量且无替换的随机采样% O/P : 样本--> 随机样本% I/P : N--> 人口; n--> 样本量; W--> 权重向量 函数样本 = RandSampleWR(N,n,W) %% 检查if(长度(N)<=0)||(n<=0)||(长度(N)<=n) disp('人口规模和样本规模必须大于零且样本规模必须小于人口规模。') 关闭结尾如果(长度(N)~=长度(W)) disp('人口大小和权重向量大小必须相同。') 关闭结尾%% 初始化maxN = 长度(N); k = 1; W = W/sum(W(1:maxN)); %% Knuth-Fisher-Yates 抽样对于 i=n:-1:1 r1 = ceil(rand*maxN); r2 = randint; while(r2> W(r1)) r1 = ceil(rand*maxN); r2 = randint; 结尾样本


【文件预览】:
RandSampleWR.zip

网友评论