在 MATLAB 中,生成随机数非常常见,下面按不同需求给你系统介绍一下。
r = rand
生成 一个 0~1 之间的随机数。
R = rand(3,4) % 3行4列随机矩阵
公式:
r = a + (b-a)*rand
示例(生成 2~5 之间):
r = 2 + 3*rand
r = randn
R = randn(2,3)
r = mu + sigma*randn
示例(μ=10,σ=2):
r = 10 + 2*randn
r = randi([a,b])
示例(1~10):
r = randi([1,10])
矩阵形式:
R = randi([1,100], 3, 3)
rng(1) % 种子为1
rand
每次运行结果相同,适合论文、实验。
rng('default')
| 分布 | 函数 |
|---|---|
| 指数分布 | exprnd |
| 泊松分布 | poissrnd |
| 二项分布 | binornd |
| 卡方分布 | chi2rnd |
| 均匀分布(通用) | unifrnd(a,b) |
示例:
x = exprnd(2) % λ=2
y = poissrnd(4) % λ=4
rng(0)
a = rand % (0,1)
b = randn % 正态
c = randi([1,6]) % 骰子
d = 5 + 2*randn % μ=5, σ=2
如果你告诉我具体用途(如仿真、机器学习、蒙特卡洛、考试题),我可以给你更针对性的代码。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。