generating random numbers only 2 numbers with percentage

9 次查看(过去 30 天)
how to generating random numbers 1x100 but only 2 numbers (suppose 0 and 1) with percentage 0=30% and 1=70%

回答(1 个)

Riccardo Scorretti
Riccardo Scorretti 2022-4-21
编辑:Riccardo Scorretti 2022-4-21
The function rand generates random numbers uniformely distributed between 0 and 1. Hence, it is enough to set to 1 numbers the value of which is higher than 0.30 = 1 - 0.70, and to 0 all the others.
n = 10000; % = number of values to generate
prob_1 = 0.70;
num = rand(n,1) > (1-prob_1);
num(num ~= 1) = 0;
% Validation
numel(find(num == 1)) / n
ans = 0.7009
numel(find(num == 0)) / n
ans = 0.2991

类别

Help CenterFile Exchange 中查找有关 Sources 的更多信息

产品


版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by