欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 旅游 > Matlab自学笔记三十九:日期时间型数据的算术运算:加减运算

Matlab自学笔记三十九:日期时间型数据的算术运算:加减运算

2024/10/23 23:30:28 来源:https://blog.csdn.net/freexyn/article/details/143097938  浏览:    关键词:Matlab自学笔记三十九:日期时间型数据的算术运算:加减运算

1.说明

时间点和(日历)持续时间是可加的,结果是时间点;两个时间点是可减的,结果是持续时间,用时分秒表示;时间型和浮点数运算,结果是时间型,浮点数默认单位是天;由于日历时间的不确定,加减日历时间所得结果与加减顺序有关。

2. datetimeduration的算术运算

程序示例如下:

t1=datetime

t2=t1+hours(1) %时间点+持续时间=时间点

t2=t1+hours(0:2) %%0表示当前,1表示下一个

t21=t1+days(0:2)

t21=t1+[0 1 2] %单个数字默认使用 天 为单位

dt=t2-t1 %时间点相减变成持续时间

dt21=t21-t1 %持续时间默认使用 时分秒 的形式表示

3. duration的算术运算

程序示例如下:

hours(1)+minutes(30) %持续时间自身累加,默认使用 小时 表示

hours(1)+1

4. calendarduration的运算

程序示例如下:

t3=datetime('today')

t31=t3+calmonths(0:2)

t31-t3 %两个时间点相减产生持续时间类型duration,默认使用 时分秒 的形式表示

t6=t3+calmonths(0:2)+caldays(0:2)

t6-t3 %获取持续时间

5.时间序列差分运算

时间序列差分运算使用函数diff、caldiff,程序示例如下:

diff(t2)

diff(t21)

cdf31=caldiff(t31) %一个时间序列内部之间的持续时间,产生日历持续时间calendarduration

cdf31=caldiff(t31,'days') %按 天 计算

6.日历时间差分between

程序示例如下:

between(t3,t6) %用between函数,产生日历持续时间类型,按照日历时间计算两个运算数之间的时间间隔

7.日历时间综合运算实例

由于日历持续时间随着具体的日历变化,加减日历持续时间所得结果与加减顺序有关,程序示例如下:

t33=datetime(2014,1,31) + calmonths(1) + caldays(30)

t34=datetime(2014,1,31) + caldays(30) + calmonths(1)

t33=datetime(2014,1,31) + calmonths(1) %2月28天,加一个日历月只能到达2.28

t34=datetime(2014,1,31) + caldays(30) %加30天要数到3.2

8.日历持续时间的特殊性

t5=calyears(2) + calmonths(2) + caldays(2) %日历持续时间自身累加,仍然用字面的年月日表示,无法整合,因为日历时间的长度未知

%%可以使用calquarters,calweeks和caldays函数添加或减去日历季度,日历周,或日历日

相关视频

1.41/Matlab数据类型之日期时间型/我有一瓢酒 可以慰风尘

36.1 Matlab GUI 界面设计初学者光速入门

14.6 Matlab微分方程数值解法 经典ode45 龙格库塔 数学建模

22.3/Matlab/fmincon/带约束多元函数最小值/解优化问题数学建模

66.20 文献上的图片是怎么用Matlab做出来的/数学建模必备技能

1.1 Matlab速成宝藏课/数学建模必备入门视频

45.1 一个实例入门Matlab深度学习|卷积神经网络

47.1/Matlab遗传算法/概念/原理/编程演示数学建模

31.17 干货汇总Matlab绘图/三维线图/三维柱状图/三维饼图/函数三维图

36.26 MatlabGUI打包成独立可执行软件exe

23.1 一节入门Matlab拟合问题fit,建立预测变量与响应变量之间的关系(一般是函数关系)

End

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com