在matlab中R = random('Normal',0,1,2,4): 生成期望为 0,标准差为 1 的(2 行 4 列)2× 4 个正态随机数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在matlab中R = random('Normal',0,1,2,4): 生成期望为 0,标准差为 1 的(2 行 4 列)2× 4 个正态随机数相关的知识,希望对你有一定的参考价值。
参考技术A R = random('Normal',0,1,2,4)确实是产生标准正态分布,(2行4列)但std2(R)通常不会正好为1,而是大约为1.
产生正态分布是指你产生的这些点,是以正态分布方式产生,而不是产生出来就完全服从正态分布,但可以肯定基本服从正态分布,也就是一定置信区间内符合正态分布。
例如:
R =
-0.6918 1.2540 -1.4410 -0.3999
0.8580 -1.5937 0.5711 0.6900
ans =
1.0886
接近1,但不是1.
换个容易理解的,你要产生0到1的均匀分布(1行4列),如
>> rand(1,4)
ans =
0.8147 0.9058 0.1270 0.9134
很明显的,你产生的4个数分布不是均匀的等差分布,但其产生的方式是0到1内均匀的,产生每个数的概率是相等的。
明白?
至于random的功能,可以
>>help random
matlab关于eps的疑问。
Ts=0.05;
N0=[8,20];
for r=1:2
N=N0(r);
D=2*pi/(Ts*N);
k=[0:N-1]+eps;
x=k*D;
Y=sin(0.275*x)./sin(0.025*x);
y=ifft(Y,N);
n=0:N-1;
subplot(1,2,r);stem(n,abs(y));
end
这个程序是正确的
为什么令k=0:N-1就得不到结果了呢?(不是出错,而是坐标轴不显示图形)。
以上是关于在matlab中R = random('Normal',0,1,2,4): 生成期望为 0,标准差为 1 的(2 行 4 列)2× 4 个正态随机数的主要内容,如果未能解决你的问题,请参考以下文章