怎么用matlab编程一个均值为一,方差为一的信源

怎么用matlab编程一个均值为一,方差为一的信源,第1张

可以使用如下的函数实现

R

=

normrnd(MU,SIGMA)

(生成均值为

MU,标准差为

SIGMA

的正态随机数)

R

=

normrnd(MU,SIGMA,m)

(生成

m

个正态随机数)

R

=

normrnd(MU,SIGMA,m,n)

(生成

m

n

列的

m

×

n

个正态随机数)

假设输入信号为X,则给X加上一个均值为0,方差为1的高斯白噪声信号的方法为

Y=X+normrnd(0,1)

%

设置采样区间

k=(0:300)'/100

%

计算采样值

x=sin(2*pi*k)

%

施加高斯白噪声

y=awgn(x,0)

figure(1)

%

设置绘图位置,左下角距屏幕左200像素,下200像素,宽800像素,高300像素

set(gcf,'Position',[200,200,800,300])

%

绘图网格1*2,左图绘制原始信号,右图绘制噪声信号

subplot(1,2,1),plot(k,x)

subplot(1,2,2),plot(k,y)

在matlab中想求(x,y,z)的平均值,可以这样来做:

A =[10 20 30 40 50 60 70 80 90]  %为了便于理解

j=1

for i=1:3:length(A)

x(j,1)=A(1,i)y(j,1)=A(1,i+1)z(j,1)=A(1,i+2)

j=j+1

end

B=[x y z]

mean(B)

end

运行结果

1、M = mean(A,dim)

返回A中沿着标量dim指定的维数上的元素的平均值。对于矩阵,mean(A,2)就是包含每一行的平均值的列向量

2、举例:

A = [1 2 33 3 64 6 84 7 7] 

mean(A) 

ans =

3.0000 4.5000 6.0000 

mean(A,2) 

ans =

2.0000

4.0000 

6.0000

6.0000

3、matlab函数含义

M = mean(A) 

返回沿数组中不同维的元素的平均值。 

如果A是一个向量,mean(A)返回A中元素的平均值。 

如果A是一个矩阵,mean(A)将中的各列视为向量,把矩阵中的每列看成一个向量,返回一个包含每一列所有元素的平均值的行向量。 如果A是一个多元数组,mean(A)将数组中第一个非单一维的值看成一个向量,返回每个向量的平均值。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11297635.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存