calmonths
日历持续时间(以月为单位)
说明
示例
创建日历月数组
X = magic(4); M = calmonths(X)
M = 4x4 calendarDuration
1y 4mo 2mo 3mo 1y 1mo
5mo 11mo 10mo 8mo
9mo 7mo 6mo 1y
4mo 1y 2mo 1y 3mo 1mo
月末与日历月相加
创建一个 datetime
值,其日期部分是 1 月底。
D = datetime('2021-01-31')
D = datetime
31-Jan-2021
使用 calmonths
函数将一个日历月数组添加到 D
。由于 2 月的天数少于 1 月,因此在 1 月 31 日后增加一个日历月很明显会是 2 月 28 日,因为 2021 年不是闰年。
D = D + calmonths(0:2)
D = 1x3 datetime
31-Jan-2021 28-Feb-2021 31-Mar-2021
现在创建一个 datetime
值,其日期部分是 2 月底。
D2 = datetime('2021-02-28')
D2 = datetime
28-Feb-2021
日历月份有不同长度。但是,3 月和 4 月的天数比 2 月多。因此,在 2 月 28 日后添加日历月会出现 3 月 28 日和 4 月 28 日。
D2 = D2 + calmonths(0:2)
D2 = 1x3 datetime
28-Feb-2021 28-Mar-2021 28-Apr-2021
要确保 D2
具有月末值,请使用 dateshift
函数。
D2 = dateshift(D2,'end','month')
D2 = 1x3 datetime
28-Feb-2021 31-Mar-2021 30-Apr-2021
将日历持续时间转换为日历月
创建一个日历持续时间数组。然后,将每个值转换为等效的整数日历月数。
X = calmonths(15:17) + caldays(8) + hours(1.2345)
X = 1x3 calendarDuration
1y 3mo 8d 1h 14m 4.2s 1y 4mo 8d 1h 14m 4.2s 1y 5mo 8d 1h 14m 4.2s
M = calmonths(X)
M = 1×3
15 16 17
输入参数
X
— 输入数组
数值数组 | 日历持续时间数组 | 逻辑数组
输入数组,指定为数值数组、日历持续时间数组或逻辑数组。如果 X
是数值数组,则它必须仅包含整数值。即,您不能创建带小数的日历单位。
扩展功能
tall 数组
对行数太多而无法放入内存的数组进行计算。
此函数完全支持 tall 数组。有关详细信息,请参阅 tall 数组。
基于线程的环境
使用 MATLAB® backgroundPool
在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool
加快代码运行速度。
分布式数组
使用 Parallel Computing Toolbox™ 在集群的组合内存中对大型数组进行分区。
此函数完全支持分布式数组。有关详细信息,请参阅Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox)。
版本历史记录
在 R2014b 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)