matlab中rand()函数怎么用?
举例:
rand(2,6)
ans =
0.8147 0.1270 0.6324 0.2785 0.9575 0.1576
0.9058 0.9134 0.0975 0.5469 0.9649 0.9706
产生0-1随机数。
>> randn(2,6)
ans =
0.4889 0.7269 0.2939 0.8884 -1.0689 -2.9443
1.0347 -0.3034 -0.7873 -1.1471 -0.8095 1.4384
产生均值为0,方差 σ^2 = 1,标准差σ = 1的正态分布的随机数
使用rand的流程可以总结为:
1 调用srand(time(NULL))设置随机数种子。
2 调用rand函数获取一个或一系列随机数。
需要注意的是,srand只需要在所有rand调用前,被调用一次即可,没必要调用多次。
为了使rand的结果更“真”一些,也就是令其返回值更具有随机性(不确定性),C语言在stdlib.h中还提供了srand函数,通过该函数可以设置一个随机数种子,一般用当前时间的毫秒数来做参数。通过time(NULL)可以获取到当前时间的毫秒值(该函数位于time.h)中。
简单说:
rand是0-1随机的
randn是正态分布
举例:
rand(2,6)
ans =
0.8147 0.1270 0.6324 0.2785 0.9575 0.1576
0.9058 0.9134 0.0975 0.5469 0.9649 0.9706
产生0-1随机数。
>> randn(2,6)
ans =
0.4889 0.7269 0.2939 0.8884 -1.0689 -2.9443
1.0347 -0.3034 -0.7873 -1.1471 -0.8095 1.4384
产生均值为0,方差 σ^2 = 1,标准差σ = 1的正态分布的随机数
matlab中函数
功能:matlab中通过rand函数产生的是介于0到1(不包括1)之间的伪随机数。更多信息请见本词条参考资料或者在matlab命令窗口输入help rand获得帮助信息。
1、rand(n)表示产生一个n×n的随机矩阵,n必须是整数,否则会报错。
2、rand(m,n)或rand([m n])产生m×n均匀分布的随机矩阵,元素取值在0.0~1.0。
3、X=rand(1,10);产生10个0~1的随机数。
4、Y = rand(size(A))产生一个与A同样大小的数组。
5、产生介于a到b之间的伪随机数。
以上内容参考;百度百科-rand