全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
3017 1
2014-07-29
Matlab之rand函数的使用
rand函数的意义:

rand是0-1的均匀分布,randn是均值为0方差为1的正态分布 用法自己help rand或者help randn一下就知道了 rand(n)或randn(n)生成n*n的随机数矩阵 rand(n,m)或randn(m,n)生成m*n的随机数矩阵。


Y = rand(n)
Y = rand(m,n)
Y = rand([m n])
Y = rand(m,n,p,...)
Y = rand([m n p...])
Y = rand(size(A))
rand
s = rand('state')
描述
rand函数产生由在(0, 1)之间均匀分布的随机数组成的数组。
Y = rand(n) 返回一个n x n的随机矩阵。如果n不是数量,则返回错误信息。
Y = rand(m,n) 或 Y = rand([m n]) 返回一个m x n的随机矩阵。
Y = rand(m,n,p,...) 或 Y = rand([m n p...]) 产生随机数组。
Y = rand(size(A)) 返回一个和A有相同尺寸的随机矩阵。

1,rand(3)*-2   rand(3)是一个3*3的随机矩阵(数值范围在0~1之间)
然后就是每个数乘上-2

2 ,用matlab随机产生60个1到365之间的正数   1+fix(365*rand(1,60));

3,用rand函数随机取100个从-1到1的数x1,x2,...,x = rand(1,100) * 2 - 1


提示:如何产生整数呢?

      rand函数是产生0到1的随机分布
      randn函数是产生标准正态分布
      randint是产生整数随机数,默认为0和1
>> rand(3)

ans =

    0.8147    0.9134    0.2785
    0.9058    0.6324    0.5469
    0.1270    0.0975    0.9575

>> randn(3)

ans =

   -0.4326    0.2877    1.1892
   -1.6656   -1.1465   -0.0376
    0.1253    1.1909    0.3273

>> randint(3)

ans =

     1     1     0
     0     0     0
     1     1     1


经过实践,以下做法我觉得不错:

>> randi([0,1],1,5)

ans =

     1     1     1     0     0

这就是在[0,1]的整数选择,产生1*5的矩阵。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-7-30 14:33:31
message received
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群