matlab中rando函数和random函数的区别

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 05:18:58
matlab中rando函数和random函数的区别

matlab中rando函数和random函数的区别
matlab中rando函数和random函数的区别

matlab中rando函数和random函数的区别
没有rando函数.只有rand和randn
1.rand()
生成(0,1)区间上均匀分布的随机变量.基本语法:
rand([M,N,P ...])
生成排列成M*N*P... 多维向量的随机数.如果只写M,则生成M*M矩阵;如果参数为[M,N]可以省略掉方括号.一些例子:
rand(5,1) %生成5个随机数排列的列向量,一般用这种格式
rand(5) %生成5行5列的随机数矩阵
rand([5,4]) %生成一个5行4列的随机数矩阵
生成的随机数大致的分布.
x=rand(100000,1);
hist(x,30);
由此可以看到生成的随机数很符合均匀分布.(视频教程会略提及hist()函数的作用)
2.randn()
生成服从标准正态分布(均值为0,方差为1)的随机数.基本语法和rand()类似.
randn([M,N,P ...])
生成排列成M*N*P... 多维向量的随机数.如果只写M,则生成M*M矩阵;如果参数为[M,N]可以省略掉方括号.一些例子:
randn(5,1) %生成5个随机数排列的列向量,一般用这种格式
randn(5) %生成5行5列的随机数矩阵
randn([5,4]) %生成一个5行4列的随机数矩阵
3、matlab中random函数——通用函数,求各分布的随机数据,其用法:
y = random('norm',A1,A2,A3,m,n)
式中:A1,A2,A3为分布的参数,m,n用来指定随机数的行和列,name的取值有相关的表格来参照.
例:产生一个3行4列均值为2、标准差为0.3的正态分布随机数:
>>y =random('norm',2,0.3,3,4)
y =
2.1613 2.2587 1.8699 2.8308
2.5502 2.0956 2.1028 1.5950
1.3223 1.6077 3.0735 2.9105