
肖老师为您分享以下优质知识
在 MATLAB 中生成二进制随机数主要有以下两种方法,具体选择取决于需求:
一、使用 `rand` 函数生成二进制随机数
`rand` 函数默认生成 [0, 1) 区间内的均匀分布随机数,可通过取整操作转换为二进制形式。
示例代码:
```matlab
% 生成一个 1x10 的二进制随机矩阵
binary_matrix = round(rand(1, 10));
```
说明:
`rand(1, 10)` 生成 1 行 10 列的 [0, 1) 均匀分布随机数矩阵。
`round` 函数将每个元素四舍五入为 0 或 1,得到二进制矩阵。
二、使用 `randi` 函数生成指定范围的二进制随机数
`randi` 函数可生成指定范围内的均匀分布整数,通过设置参数范围为 0 和 1 可直接生成二进制数。
示例代码:
```matlab
% 生成一个 2x5 的二进制随机矩阵(0 或 1)
binary_matrix = randi([0, 1], 2, 5);
```
说明:
`randi([0, 1], 2, 5)` 生成 2 行 5 列的 0 或 1 均匀分布随机数矩阵。
三、其他相关函数
`binornd`:生成服从二项分布的随机数,适用于特定概率场景(如模拟成功次数)。
`unifrnd`:生成指定区间的离散均匀分布随机数,可通过调整参数生成二进制形式。
注意事项:
生成二进制随机数时,建议使用 `rand` 或 `randi` 函数,避免使用 `linspace` 等非二进制函数。
若需可重复的随机数序列,可通过 `rng` 函数设置种子。