MATLAB | 对随机信号进行统计分析,绘制频次直方图、频率分布图,与理论概率密度进行比较

本文主要是介绍MATLAB | 对随机信号进行统计分析,绘制频次直方图、频率分布图,与理论概率密度进行比较,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、问题描述

对于一个随机信号,我们可以通过统计手段,得到其的频次分布图(直方图),并由此计算出它的频率分布图。当观察次数区域无穷大时,频率分布图近似于概率密度函数。
下面我们以稳定分布的随机变量为例,来对其进行分析,分析其频次直方图、频率分布图,并与理论概率密度进行比较。

二、解决思路

(1)生成随机变量。使用makedist()函数创建一个概率分布对象,在此基础上,使用random()函数生成随机变量。
(2)绘制直方图。histogram()函数被使用来绘制频次分布图。
(3)将直方图的频次分布转换为频率分布图。频次除以观测次数得到区间频率,再除以区间长度即可得到频率分布图。
(4)使用pdf()函数绘制理论的概率密度函数。

三、实验代码

close all;clc;clear all;%% 参数设置SigLength = 5e7; % 信号长度% 稳定分布噪声参数
alpha = 1.5;
beta = 0;
gamma = 1;
miu = 0;%% 信号生成pd1 = makedist('Stable','alpha',alpha,'beta',beta,'gam',gamma,'delta',miu); % 产生对称α稳定分布
noise = random(pd1,[SigLength,1]); % 依据对象生成随机变量% noise2 = random('Stable',alpha,beta,gamma,miu,[SigLength,1]); % 方法二%% 统计直方图h1 = histogram(noise); % 作出直方图,其中BinEdges是横坐标,Values是出现次数(频数)
title('频次直方图');
xlim([-10,10]);
% hold on;nbins = h1.NumBins; % 获取直方图的分组数
x1 = zeros(nbins,1); % 将histogram估计的结果转换为频率图(将频次图转换为频率图)
for ii = 1:nbinsx1(ii,1) = transpose(0.5*(h1.BinEdges(ii) + h1.BinEdges(ii+1))); % 取区间中点
end
IntervalLength = h1.BinEdges(nbins) - h1.BinEdges(1); % 数据区间总长度
IntervalPerLength = IntervalLength/nbins; % 每个区间长度
z1 = transpose(h1.Values/SigLength/IntervalPerLength); % 重点,这是由频次直方图画概率密度的近似%% 计算理论PDFpdf1 = pdf(pd1,x1);%% 作图figure;
plot(noise);
title('噪声');figure;
plot(x1,pdf1);
title('理论的PDF');
xlim([-10,10]);figure;
plot(x1,z1,'o');hold on;
plot(x1,pdf1);hold on;
xlim([-10,10]);
legend('直方图估计','理论的PDF');

四、实验结果

这篇关于MATLAB | 对随机信号进行统计分析,绘制频次直方图、频率分布图,与理论概率密度进行比较的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/227808

相关文章

全屋WiFi 7无死角! 华硕 RP-BE58无线信号放大器体验测评

《全屋WiFi7无死角!华硕RP-BE58无线信号放大器体验测评》家里网络总是有很多死角没有网,我决定入手一台支持Mesh组网的WiFi7路由系统以彻底解决网络覆盖问题,最终选择了一款功能非常... 自2023年WiFi 7技术标准(IEEE 802.11be)正式落地以来,这项第七代无线网络技术就以超高速

Linux使用scp进行远程目录文件复制的详细步骤和示例

《Linux使用scp进行远程目录文件复制的详细步骤和示例》在Linux系统中,scp(安全复制协议)是一个使用SSH(安全外壳协议)进行文件和目录安全传输的命令,它允许在远程主机之间复制文件和目录,... 目录1. 什么是scp?2. 语法3. 示例示例 1: 复制本地目录到远程主机示例 2: 复制远程主

windows系统上如何进行maven安装和配置方式

《windows系统上如何进行maven安装和配置方式》:本文主要介绍windows系统上如何进行maven安装和配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. Maven 简介2. maven的下载与安装2.1 下载 Maven2.2 Maven安装2.

C/C++的OpenCV 进行图像梯度提取的几种实现

《C/C++的OpenCV进行图像梯度提取的几种实现》本文主要介绍了C/C++的OpenCV进行图像梯度提取的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录预www.chinasem.cn备知识1. 图像加载与预处理2. Sobel 算子计算 X 和 Y

Go语言中使用JWT进行身份验证的几种方式

《Go语言中使用JWT进行身份验证的几种方式》本文主要介绍了Go语言中使用JWT进行身份验证的几种方式,包括dgrijalva/jwt-go、golang-jwt/jwt、lestrrat-go/jw... 目录简介1. github.com/dgrijalva/jwt-go安装:使用示例:解释:2. gi

SpringBoot如何对密码等敏感信息进行脱敏处理

《SpringBoot如何对密码等敏感信息进行脱敏处理》这篇文章主要为大家详细介绍了SpringBoot对密码等敏感信息进行脱敏处理的几个常用方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录​1. 配置文件敏感信息脱敏​​2. 日志脱敏​​3. API响应脱敏​​4. 其他注意事项​​总结

python进行while遍历的常见错误解析

《python进行while遍历的常见错误解析》在Python中选择合适的遍历方式需要综合考虑可读性、性能和具体需求,本文就来和大家讲解一下python中while遍历常见错误以及所有遍历方法的优缺点... 目录一、超出数组范围问题分析错误复现解决方法关键区别二、continue使用问题分析正确写法关键点三

Python对PDF书签进行添加,修改提取和删除操作

《Python对PDF书签进行添加,修改提取和删除操作》PDF书签是PDF文件中的导航工具,通常包含一个标题和一个跳转位置,本教程将详细介绍如何使用Python对PDF文件中的书签进行操作... 目录简介使用工具python 向 PDF 添加书签添加书签添加嵌套书签Python 修改 PDF 书签Pytho

QT6中绘制UI的两种方法详解与示例代码

《QT6中绘制UI的两种方法详解与示例代码》Qt6提供了两种主要的UI绘制技术:​​QML(QtMeta-ObjectLanguage)​​和​​C++Widgets​​,这两种技术各有优势,适用于不... 目录一、QML 技术详解1.1 QML 简介1.2 QML 的核心概念1.3 QML 示例:简单按钮

Java进行日期解析与格式化的实现代码

《Java进行日期解析与格式化的实现代码》使用Java搭配ApacheCommonsLang3和Natty库,可以实现灵活高效的日期解析与格式化,本文将通过相关示例为大家讲讲具体的实践操作,需要的可以... 目录一、背景二、依赖介绍1. Apache Commons Lang32. Natty三、核心实现代