主要内容

randn

正态分布随机数

描述

X = randn返回一个随机的标量来自标准正态分布。

例子

X = randn (n)返回一个n——- - - - - -n矩阵正态分布的随机数。

例子

X = randn (sz1,…, szN)返回一个sz1——-…——-szN阵列的随机数sz1,…, szN显示每个维度的大小。例如,randn (3、4)返回一个3×4矩阵。

例子

X = randn (深圳)返回一个数组向量随机数字的大小深圳定义了大小(X)。例如,randn (4 [3])返回一个3×4矩阵。

例子

X = randn (___,typename)返回一个随机数数组的数据类型typename。的typename输入可以是“单身”“替身”。您可以使用任何输入参数的前面的语法。

例子

X = randn (___“喜欢”,p)返回一个数组的随机数p;也就是说,相同的数据类型和复杂性(真实的或复杂的)p。您可以指定typename“喜欢”,但不能两者兼得。

X = randn (年代,___)随机数生成数据流年代而不是默认的全球流。创建一个流,使用RandStream。您可以指定年代紧随其后的任何输入参数组合在以前的语法。

例子

全部折叠

生成一个5-by-5矩阵正态分布的随机数。

r = randn (5)
r =5×50.5377 -1.3077 -1.3499 -0.2050 0.6715 1.8339 -0.4336 3.0349 -0.1241 -1.2075 -2.2588 0.3426 0.7254 1.4897 0.7172 0.8622 3.5784 -0.0631 1.4090 1.6302 0.3188 2.7694 0.7147 1.4172 0.4889

从二元正态分布生成值与指定的均值向量和协方差矩阵。

μ= (1 - 2);σ= [1 0.5;0.5 - 2);R =胆固醇(σ);z = repmat(μ10 1)+ randn (10, 2) * R
z =10×21.5377 0.4831 2.8339 6.9318 -1.2588 1.8302 1.8622 2.3477 1.3188 3.1049 -0.3077 1.0750 0.5664 1.6190 1.3426 4.1420 4.5784 5.6532 3.7694 5.2595

保存当前状态的随机数字生成器,并创建一个1-by-5向量随机的数字。

s =提高;r = randn (1、5)
r =1×50.5377 1.8339 -2.2588 0.8622 0.3188

随机数发生器的状态恢复年代,然后创建一个新的随机数1-by-5向量。之前的值是一样的。

rng(年代);r1 = randn (1、5)
r1 =1×50.5377 1.8339 -2.2588 0.8622 0.3188

创建一个3-by-2-by-3随机数的数组。

X = randn ([3, 2, 3])
X = X (:: 1) = 0.5377 0.8622 1.8339 0.3188 -2.2588 -1.3077 X (:,: 2) = -0.4336 2.7694 0.3426 -1.3499 3.5784 3.0349 X (:,:, 3) = 0.7254 -0.2050 -0.0631 - -0.1241 0.7147 - 1.4897

创建一个1-by-4向量元素是单精度的随机数字。

r = randn (1, 4,“单身”)
r =1 x4单一的行向量0.5377 1.8339 -2.2588 0.8622
类(r)
ans = '单'

创建一个矩阵正态分布随机数与同样大小的现有的数组。

= (3 2;2 1];深圳=大小(A);X = randn(深圳)
X =2×20.5377 -2.2588 1.8339 0.8622

它是一种常见的模式结合前两行代码一行。

X = randn(大小(A));

创建一个2×2矩阵单精度的随机数字。

单([p = 3 2;2 1]);

创建一个数组的随机数都是一样的大小和数据类型p

X = randn(大小(p),“喜欢”,p)
X =2 x2单一矩阵0.5377 -2.2588 1.8339 0.8622
类(X)
ans = '单'

从标准生成10个随机复数复杂的正态分布。

1 = randn(10日,“喜欢”1我)
一个=10×1复杂0.3802 + 1.2968我-1.5972 + 0.6096 0.2254 - 0.9247 -0.3066 -0.9545我2.5303 + 1.9583 + 0.2423 + 2.1460我0.5129 - 0.0446 0.5054 - 0.1449 -0.0878 0.9963 + 1.0021 + 1.0534我

默认情况下,randn (n,“喜欢”,1我)生成随机数从标准复杂的正态分布。实部和虚部都是独立正态分布随机变量的意思0和方差1/2。协方差矩阵的形式(1/2 0;0 1/2)

z = randn(50000年1“喜欢”1我);cov_z = x(真正的(z),图像放大(z), 1)
cov_z =2×20.4980 0.0007 0.0007 0.4957

指定一个更一般的复杂的正态分布,定义均值和协方差矩阵。例如,指定的意思 μ = 1 + 2 和协方差矩阵 σ = ( σ xx σ xy σ yx σ yy ] = ( 2 - - - - - - 2 - - - - - - 2 4 ]

μ= 1 + 2;σ= [2 2;2 4];

改变以前生成的数据遵循新定义的复杂的正态分布。包括的因素√6 (2)当扩展数据因为方差的实部和虚部原分布是1/2。

R =胆固醇(σ);z_comp =[真实(z)图像放大(z)];z = repmat(μ,50000,(1)+ z_comp * sqrt (2) * R * [1;1我);z (1:10)
ans =10×1复杂1.7604 + 3.8331我-2.1945 + 6.4138 1.4508 - 0.3002 0.3868 -0.9090我6.0606 + 0.8560 + 3.0977 + 8.2011我2.0259 + 0.8850 2.0108 + 0.6993 0.8244 2.9927 + 2.0115 + 4.2823我

输入参数

全部折叠

方阵的大小,指定为一个整数值。

  • 如果n0,然后X是一个空矩阵。

  • 如果n是负的,那么作为吗0

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

每个维度的大小,指定为独立参数的整数值。

  • 如果任何尺寸的大小0,然后X是一个空数组。

  • 如果任何尺寸的大小是负的,那么它被视为0

  • 第二个维度之外,randn忽略了落后于尺寸大小为1。例如,randn (3, 1, 1, 1)产生随机数的3×1的向量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

每个维度的大小,指定为一个行向量的整数值。这个向量的每个元素表示相应尺寸的大小:

  • 如果任何尺寸的大小0,然后X是一个空数组。

  • 如果任何尺寸的大小是负的,那么它被视为0

  • 第二个维度之外,randn忽略了落后于尺寸大小为1。例如,randn ([3 1 1 1])产生随机数的3×1的向量。

例子:深圳= (2 3 4)创建一个2-by-3-by-4数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

数据类型(类)来创建指定为“替身”,“单身”,或者另一个提供的类的名称randn金宝app支持。

例子:“单身”randn (5)

的原型创建数组,指定为一个数字数组。

例子:randn(5“喜欢”p)

数据类型:|
复数的支持:金宝app是的

随机数流,指定为一个RandStream对象。

例子:s = RandStream (“dsfmt19937”);randn(年代,1 [3])

更多关于

全部折叠

标准实际和标准复杂的正态分布

生成随机实数时,randn遵循标准正态分布函数生成数据:

f ( x ) = 1 2 π e x 2 / 2

在这里,x是一个随机变量平均值为0,方差为1。

在生成随机复数时,比如使用命令的时候randn(…,“喜欢”,1我),randn遵守标准函数生成数据复杂的正态分布:

f ( z ) = 1 π e | z | 2

在这里,z是一个随机的复杂变量的实部和虚部是独立正态分布随机变量均值为0,方差1/2。

提示

  • 产生的序列的数字randn是由内部设置统一的伪随机数发生器的基础兰德,兰迪,randn。你可以控制共享随机数发生器使用rng

扩展功能

版本历史

之前介绍过的R2006a

全部展开