【数据分析】多重分形去趋势波动分析附matlab代码

简介: 【数据分析】多重分形去趋势波动分析附matlab代码

 ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测雷达通信 无线传感器

信号处理图像处理路径规划元胞自动机无人机

⛄ 内容介绍

Fractal structures are found in biomedical time series from a wide range of physiological

phenomena. The multifractal spectrum identififies the deviations in fractal structure within

time periods with large and small flfluctuations. The present tutorial is an introduction to

multifractal detrended flfluctuation analysis (MFDFA) that estimates the multifractal spec

trum of biomedical time series. The tutorial presents MFDFA step-by-step in an interactive

Matlab session. All Matlab tools needed are available in Introduction to MFDFA folder at the

website www.ntnu.edu/inm/geri/software. MFDFA are introduced in Matlab code boxes

where the reader can employ pieces of, or the entire MFDFA to example time series. After

introducing MFDFA, the tutorial discusses the best practice of MFDFA in biomedical signal

processing. The main aim of the tutorial is to give the reader a simple self-sustained guide

to the implementation of MFDFA and interpretation of the resulting multifractal spectra.

⛄ 部分代码

YMatrix1=[multifractal.*30,RW3];

YMatrix2=[monofractal.*30,RW2];

YMatrix3=[whitenoise.*30,RW1];

X1=2600:3600;

Y1=RW3(2600:3600);

% Create figure

figure1 = figure('PaperType','a4letter','PaperSize',[20.98 29.68],...

   'Color',[1 1 1]);

% Create axes

axes1 = axes('Parent',figure1,'YTickLabel',{'0','200','400','600'},...

   'YTick',[0 200 400 600],...

   'XTickLabel',{},...

   'XTick',zeros(1,0),...

   'Position',[0.13 0.6545 0.7745 0.2705],...

   'LineWidth',2,...

   'FontSize',14);

% Uncomment the following line to preserve the Y-limits of the axes

ylim(axes1,[-220 700]);

hold(axes1,'all');

% Create multiple lines using matrix input to plot

pplot1 = plot(YMatrix1,'Parent',axes1);

set(pplot1(2),'LineWidth',2,'Color',[1 0 0]);

% Create axes

axes2 = axes('Parent',figure1,'YTickLabel',{},'YTick',zeros(1,0),...

   'XTick',zeros(1,0),...

   'Position',[0.6641 0.8264 0.1875 0.1359],...

   'LineWidth',2);

% Uncomment the following line to preserve the Y-limits of the axes

ylim(axes2,[370 570]);

box(axes2,'on');

hold(axes2,'all');

% Create plot

plot(X1,Y1,'Parent',axes2,'LineWidth',2,'Color',[1 0 0]);

% Create axes

axes3 = axes('Parent',figure1,'YTickLabel',{'0','200','400','600'},...

   'YTick',[0 200 400 600],...

   'XTickLabel',{},...

   'XTick',zeros(1,0),...

   'Position',[0.13 0.3833 0.7745 0.272],...

   'LineWidth',2,...

   'FontSize',14);

% Uncomment the following line to preserve the Y-limits of the axes

ylim(axes3,[-220 700]);

hold(axes3,'all');

% Create multiple lines using matrix input to plot

pplot2 = plot(YMatrix2,'Parent',axes3);

set(pplot2(1),'DisplayName','Noise like time series');

set(pplot2(2),'LineWidth',2,'Color',[1 0 0],...

   'DisplayName','Random walk like time series');

% Create ylabel

ylabel('Amplitude (measurement units)','FontSize',14);

% Create axes

axes4 = axes('Parent',figure1,'YTickLabel',{'-200','0','200','400','600'},...

   'YTick',[0 200 400 600],...

   'XTickLabel',{'0','1?00','2?00','3?00','4?00','5?00','6?00','7?00','8?00'},...

   'XTick',[0 1000 2000 3000 4000 5000 6000 7000 8000],...

   'Position',[0.13 0.1108 0.7745 0.2723],...

   'LineWidth',2,...

   'FontSize',14);

ylim(axes4,[-220 700]);

hold(axes4,'all');

% Create multiple lines using matrix input to plot

pplot3 = plot(YMatrix3,'Parent',axes4);

set(pplot3(2),'LineWidth',2,'Color',[1 0 0]);

% Create xlabel

xlabel('time (sample number)','FontSize',14);

% Create legend

legend1 = legend(axes3,'show');

set(legend1,'LineWidth',2);

% Create textbox

annotation(figure1,'textbox',[0.2362 0.6476 0.1934 0.04038],...

   'String',{'Monofractal time series'},...

   'FontSize',14,...

   'FitBoxToText','off',...

   'LineStyle','none');

% Create textbox

annotation(figure1,'textbox',[0.2362 0.9246 0.1822 0.04038],...

   'String',{'Multifractal time series'},...

   'FontSize',14,...

   'FitBoxToText','off',...

   'LineStyle','none');

% Create textbox

annotation(figure1,'textbox',[0.238 0.2453 0.1057 0.04038],...

   'String',{'White noise'},...

   'FontSize',14,...

   'FitBoxToText','off',...

   'LineStyle','none');

% Create line

annotation(figure1,'line',[0.3828 0.3828],[0.8978 0.8278]);

% Create line

annotation(figure1,'line',[0.3828 0.4714],[0.8281 0.8291]);

% Create line

annotation(figure1,'line',[0.4713 0.4713],[0.8294 0.9004]);

% Create line

annotation(figure1,'line',[0.3828 0.4705],[0.8995 0.9004]);

% Create line

annotation(figure1,'line',[0.4705 0.6632],[0.8291 0.8277]);

% Create line

annotation(figure1,'line',[0.4696 0.6667],[0.9017 0.9637]);

% Create line

annotation(figure1,'line',[0.1302 0.1293],[0.9327 0.8977],'LineWidth',4,...

   'Color',[1 1 1]);

clear pplot1 pplot2 pplot3 legend1 axes1 figure1 axes2 figure2 axes3 figure3 ans axes4 X1 Y1 YMatrix1 YMatrix2 YMatrix3

⛄ 运行结果

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

正在上传…重新上传取消

image.gif编辑

image.gif编辑

image.gif编辑

⛄ 参考文献

[1]Espen Alexander Fürst E.A.F.I. Ihlen. Introduction to Multifractal Detrended Fluctuation Analysis in Matlab[J]. Frontiers, 2012.

❤️ 关注我领取海量matlab电子书和数学建模资料

❤️部分理论引用网络文献,若有侵权联系博主删除

相关文章
|
20天前
|
人工智能 数据可视化 数据挖掘
【python】Python航空公司客户价值数据分析(代码+论文)【独一无二】
【python】Python航空公司客户价值数据分析(代码+论文)【独一无二】
|
1天前
|
数据可视化 数据挖掘
R语言生存分析数据分析可视化案例(上)
R语言生存分析数据分析可视化案例
|
10天前
|
数据采集 数据可视化 数据挖掘
Seaborn在数据分析中的应用:案例分析与实践
【4月更文挑战第17天】本文介绍了Seaborn在数据分析中的应用,它是一个基于Python的可视化库,简化了复杂数据的图表创建。通过一个销售数据分析的案例,展示了数据加载、描述性统计、相关性分析、多变量分析及高级可视化步骤。实践技巧包括数据清洗、图表选择、颜色使用、注释标签和交互性。Seaborn助力高效数据探索和理解,提升分析效率。注意,实际使用需根据数据集和目标调整,并参考最新文档。
|
20天前
|
存储 人工智能 机器人
【Matlab】Matlab电话拨号音合成与识别(代码+论文)【独一无二】
【Matlab】Matlab电话拨号音合成与识别(代码+论文)【独一无二】
|
20天前
|
机器学习/深度学习 数据可视化 算法
【python】Python大豆特征数据分析 [机器学习版一](代码+论文)【独一无二】
【python】Python大豆特征数据分析 [机器学习版一](代码+论文)【独一无二】
|
20天前
|
机器学习/深度学习 数据可视化 数据挖掘
【python】双十一美妆数据分析可视化 [聚类分析/线性回归/支持向量机](代码+报告)【独一无二】
【python】双十一美妆数据分析可视化 [聚类分析/线性回归/支持向量机](代码+报告)【独一无二】
|
24天前
|
存储 机器学习/深度学习 数据采集
数据分析师如何处理数据以进行分析?
【4月更文挑战第4天】数据分析师如何处理数据以进行分析?
19 9
|
1月前
|
监控 数据可视化 算法
上网行为监控管理:利用R编写的数据分析和可视化代码示例
本文介绍了使用R语言进行上网行为监控管理的方法。通过加载和分析日志数据,如示例代码所示,可以了解用户行为。使用ggplot2绘制时间趋势图以洞察用户访问模式,借助caret进行聚类分析以识别异常行为。此外,利用httr包可自动将数据提交至网站,提升管理效率。R语言为网络安全和行为监控提供了强大工具。
79 0
|
1月前
|
机器学习/深度学习 数据可视化 算法
python数据分析——在面对各种问题时,因如何做分析的分类汇总
Python数据分析是指使用Python编程语言对数据进行收集、处理、分析和可视化的过程。Python是一种非常流行的编程语言,具有简单易学、代码可读性高、生态系统强大的特点,因此在数据科学领域得到广泛应用。
85 0
|
1月前
|
监控 搜索推荐 数据挖掘
python数据分析——业务指标分析
业务指标分析是企业运营中不可或缺的一环,通过对各项关键指标的深入剖析,我们能够更好地了解企业的运营状况,发现潜在问题,进而制定相应的策略来优化业务流程、提升经营效率。 在业务指标分析中,我们首先要明确分析的目的和范围。是为了评估整体业务健康状况,还是针对某一具体环节进行优化?明确了目的后,我们需要收集相关的数据,这些数据可能来源于不同的业务系统和数据库,因此数据的整合和清洗也是分析过程中的重要步骤。 接下来,我们要选择合适的分析方法。比如,对于销售数据,我们可以采用时间序列分析来观察销售趋势;对于用户行为数据,我们可以使用用户画像和路径分析来洞察用户需求和行为习惯。
103 1