Julia / Dates:将时间跨度从“天”转换为“年”或“ Float64”

时间:2019-02-16 19:44:38

标签: date type-conversion julia

我想将时间跨度从“天”转换为“年”或“ Float64”

让时间跨度t

t = Date("2000-02-04") - Date("1996-06-04")

但是以下各行给我一个错误

t/365
Float64(t)
parse(Float64,t)
convert(Dates.Year, t)

1 个答案:

答案 0 :(得分:3)

您可以获取存储在t中的值并将其除以365

julia> Dates.value(t)/365
3.671232876712329

但是请注意,这是假设每年为365天,这是不正确的。在某些情况下,一个更优雅的解决方案是假设日期从某个时间点开始计算年份,请看下面的示例:

julia> d0 = Date("2000-01-01")
2000-01-01

julia> d1 = d0 + t
2003-09-02

julia> year(d1)-year(d0), month(d1)-month(d0), day(d1) - day(d0)
(3, 8, 1)