将日期差转换为Julia中的年份

  • 本文关键字:Julia 日期 转换 date julia
  • 更新时间 :
  • 英文 :


使用Julia,我想找到t2和t1这两个时间点之间的周期,其中t1和t2的格式都是"y-m-d";。我可以在几天内得到这个值,但我想把它隐藏几年:

date_format = DateFormat("y-m-d")
age_days = Date(t2, date_format) - Date(t1, date_format)
age_years = Dates.Year(age_days)

以上始终返回一个错误。我知道我可以只做Dates.value(age_days(/365.25,但有没有办法利用内置函数来做到这一点?

此功能可在DayCounts.jl:中找到

julia> using Dates, DayCounts
julia> d1=Date("2020-02-14", dateformat"y-m-d");
julia> d2=Date("2021-02-15", dateformat"y-m-d");
julia> yearfrac(d1,d2,DayCounts.ActualActualISDA())
1.003069091997904

棘手的部分是决定在计算这些值时使用什么作为分子和分母。上述代码使用了2006年ISDA定义,§4.16(b(方法:

(# of days in standard year)/365 + (# of days in leap year)/366

还有许多其他实现,它们似乎都在该库中实现。

请注意,这是我上一篇文章的另一个答案:Julia/Dates:convert a timespan from";天";至";年;或";Float64〃;这可能是一场更好的比赛。

最新更新