编写测量矩阵代码需要用到的几个常见函数

本文详细介绍了Matlab中的randperm、randi和randn三个随机数生成函数的使用方法,包括函数功能、语法及示例应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.randperm

函数功能:随机打乱一个数字序列
randperm(n),其中n为整数。

例1:
>> randperm(5)

ans = 2 3 4 1 5
例2:
>> A = [1, 2, 3; 4, 5, 6; 7, 8, 9; 10, 11, 12]

rowrank = randperm(size(A, 1)); % 随机打乱矩阵的行数

B = A(rowrank, :)

A =

     1     2     3
     4     5     6
     7     8     9
    10    11    12


B =

     4     5     6
    10    11    12
     7     8     9
     1     2     3

2.randi

randi是matlab中能产生均匀分布伪随机整数的新函数。
例:randi([0 1],1,10) %生成1*10的0、1随机的矩阵:
ans =
1 1 1 0 0 1 0 1 0 0

3.randn

功能:产生标准正态分布随机数或矩阵的函数

用法:

(1)Y = randn(n)

返回一个n*n的随机项的矩阵。如果n不是个数量,将返回错误信息。"randn"是作为一个整体出现的,不能将此处的“n”替换为数字或其他字符,否则会返回“未定义与‘double’类型的输入参数相对应的函数‘rand2’”(以2替换“randn”中“n”为例)。

(2)Y = randn(m,n) 或 Y = randn([m n])

返回一个m*n的随机项矩阵。

(3)Y = randn(m,n,p,...) 或 Y = randn([m n p...])

产生随机数组

(4)Y = randn(size(A))

返回一个和A有同样维数大小的随机数组。

(5)randn

返回一个每次都变化的数量。

注:其他类似函数:rand, randperm, sprand, sprandn。。。。。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值