主要内容

yearfrac

日期之间的年分数

描述

例子

YearFraction= yearfrac (StartDate可以EndDate基础根据日期之间的天数返回一个分数(以年为单位)StartDate可以EndDate使用给定的日计数基础

一年的天数(365或366)等于日历年之后的天数StartDate可以.如果EndDate是早于StartDate可以YearFraction是负的。

所有指定的参数必须是仪器的数量(NUMINST——- - - - - -1)或(1——- - - - - -NUMINST)符合向量或标量参数。

例子

全部折叠

给定一个基础0和一个基础1,计算yearfrac

定义StartDate可以EndDate使用一个基础0

YearFraction = yearfrac (“3月14日01”“9月14日01”, 0)
YearFraction = 0.5041

定义StartDate可以EndDate使用一个基础1

YearFraction = yearfrac (“3月14日01”“9月14日01”, 1)
YearFraction = 0.5000

给定一个基础0,计算yearfrac当日历之后StartDate可以是在闰年。

定义StartDate可以EndDate使用一个基础0

yearFraction = yearfrac (03年3月14日“9月14日03”, 0)
yearFraction = 0.5027

3月14日至9月14日之间有184天,日历年之后StartDate可以是闰年,所以呢yearfrac返回184/366 = 0.5027。

使用actual/actual基数来获得“2015年7月31日”和“2015年9月30日”之间一年的比例:

yearfrac (2015年- 7月31日的“30 - 9 - 2015”, 0) * 2
ans = 0.3333

就实际/实际基础而言,一年的比例计算如下:

(从开始日期到结束日期的实际天数)/(从开始日期到开始日期一年后的实际天数)

从2015年7月31日到2015年9月30日有61天。由于下一年是闰年,从2015年7月31日到2016年7月31日之间有366天。所以61/366就是1/6。有了这个,恰好2/6是6个月期间的预期结果。

使用一个基础12的计算yearfrac日期范围的部分为闰年和非闰年。输出YearFraction是一个分数,以年为单位,基于天数之间的StartDate可以EndDate

YearFraction = yearfrac (“1 - 1月- 2016”“30 - 2017年1月- - - - - -”, 12)
YearFraction = 1.0795

给定一个基础9,计算yearfracStartDate可以EndDate使用datetime数组指定。

yearfrac (datetime (“1 - 1月- 2000”“场所”“en_US”),“1/1/2001”, 9)
ans = 1.0167

输入参数

全部折叠

开始日期,指定为N——- - - - - -11——- - - - - -N使用串行日期号、日期字符向量或日期时间数组的向量。

数据类型:|字符|datetime

结束日期,指定为N——- - - - - -11——- - - - - -N使用串行日期号、日期字符向量或日期时间数组的向量。

数据类型:|字符|datetime

每一组日期的日计数基础,指定为N——- - - - - -11——- - - - - -N值为的整数向量0通过13

  • 0 = actual/actual(默认)

  • 1 = 30/360 (sia)

  • 2 =实际/ 360

  • 3 =实际/ 365

  • 4 = 30/360 (bma)

  • 5 = 30/360 (isda)

  • 6 = 30/360(欧洲)

  • 7 =实际/365(日文)

  • 8 = actual/actual (ICMA)

  • 9 = actual/360 (ICMA)

  • 10 =实际/365 (ICMA)

  • 11 = 30/360e (icma)

  • 12 =实际/365 (ISDA)

  • 13 =总线/ 252

有关更多信息,请参见基础

数据类型:|

输出参数

全部折叠

以年为单位的实数StartDate可以EndDate返回一个N——- - - - - -11——- - - - - -N向量。

更多关于

全部折叠

之间的区别yearfracdate2time

之间的区别yearfracdate2time是,date2time将整个周期作为一个整数计算,即使周期中的实际天数是不同的。yearfrac不包括完整的周期。

例如,

Yearfrac ('1/1/2000', '1/1/2001', 9) ans = 1.0167

yearfrac基础9(ACT/360 ICMA)计算366/360 = 1.0167。因此,即使日期具有相同的月份和日期,但在一年中的差异为1,返回值可能不完全是1。另一方面,date2time计算一整年:

Date2time ('1/1/2000', '1/1/2001', 1, 9) ans = 1

之前介绍过的R2006a