matlab生成特定比例的0和1随机数
时间: 2024-09-07 22:03:18 浏览: 80
随机数生成:生成n个0到1之间的随机数的函数-matlab开发
在MATLAB中,如果你想要生成特定比例的0和1随机数,你可以使用`randi`函数结合条件语句来实现。假设你想生成一个矩阵,其中0和1的比例为50%对50%,可以这样做:
```matlab
% 定义矩阵的大小
rows = 10; % 行数
cols = 10; % 列数
% 定义概率分布:0的概率为0.5,1的概率也为0.5
prob_distribution = [0.5, 0.5];
% 使用randi函数生成0和1,根据指定的概率分布
random_matrix = zeros(rows, cols); % 初始化全零矩阵
[random_values, ~] = randsample([0, 1], rows * cols, prob_distribution(ones(1, 2)));
for i = 1:rows
for j = 1:cols
random_matrix(i,j) = random_values((i-1)*cols + j);
end
end
random_matrix
```
在这个例子中,`randsample`函数用于根据给定的概率分布生成随机数,然后通过嵌套循环将这些随机值填充到矩阵中。
阅读全文