如何在 Julia 中将毫秒数组转换为 MM:SS:ss 格式或 DateTime 格式?
How to convert Milliseconds array to MM:SS:ss format or DateTime format in Julia?
我正在尝试将毫秒转换为分钟,但无法这样做。我一直期待结果的形式
MM:SS
我已将结果保存在一个数据框中,该数据框将数据类型显示为毫秒,即使我将整行除以 60000,数据类型仍然是毫秒
delivery_time = delivery_timestamp - init_timestamp
783358-element Array{Millisecond,1}:
34200000 milliseconds
14580000 milliseconds
27300000 milliseconds
9180000 milliseconds
13560000 milliseconds
6960000 milliseconds
12600000 milliseconds
9600000 milliseconds
7500000 milliseconds
13080000 milliseconds
9180000 milliseconds
9600000 milliseconds
27660000 milliseconds
⋮
delivery_time = (delivery_time)/60000
783358-element Array{Millisecond,1}:
570 milliseconds
243 milliseconds
455 milliseconds
153 milliseconds
226 milliseconds
116 milliseconds
210 milliseconds
160 milliseconds
125 milliseconds
218 milliseconds
153 milliseconds
我期待结果
df.delivery_time
06:22
07:32
09:51
.
.
.
或者即使我能得到结果
df.delivery_time
570 minute
243 minute
455 minute
.
.
.
您可以将 Millisecond
转换为例如。 Minute
仅丢失精度。这是一个四舍五入到最近的分钟的例子:
@. Minute(round(Int, Dates.value(delivery_time) / (1000 * 60)))
如果您不需要 Minute
值而只是简单地浮动而不四舍五入,您可以这样做:
@. Dates.value(delivery_time) / (1000 * 60)
或例如
Dates.value.(delivery_time) / (1000 * 60)
如果您不想使用 @.
。
终于可以写了
Time(0) .+ delivery_time
这是无损的,但现在返回的对象不是 Period
的子类型,它将 "wrap around" 24 小时。如果您想避免换行,请使用 DateTime
而不是上面的 Time
。
非常感谢您的帮助。你解决了我的大部分问题。我很天真,但在朱莉娅一周前就开始了。
我实际上用过 -
df.delivery_time = map((x) -> convert(Time,x),df[:15])
结果是
783358-element Array{Time,1}:
09:30:00
04:03:00
07:35:00
02:33:00
03:46:00
01:56:00
我正在尝试将毫秒转换为分钟,但无法这样做。我一直期待结果的形式 MM:SS 我已将结果保存在一个数据框中,该数据框将数据类型显示为毫秒,即使我将整行除以 60000,数据类型仍然是毫秒
delivery_time = delivery_timestamp - init_timestamp
783358-element Array{Millisecond,1}:
34200000 milliseconds
14580000 milliseconds
27300000 milliseconds
9180000 milliseconds
13560000 milliseconds
6960000 milliseconds
12600000 milliseconds
9600000 milliseconds
7500000 milliseconds
13080000 milliseconds
9180000 milliseconds
9600000 milliseconds
27660000 milliseconds
⋮
delivery_time = (delivery_time)/60000
783358-element Array{Millisecond,1}:
570 milliseconds
243 milliseconds
455 milliseconds
153 milliseconds
226 milliseconds
116 milliseconds
210 milliseconds
160 milliseconds
125 milliseconds
218 milliseconds
153 milliseconds
我期待结果
df.delivery_time
06:22
07:32
09:51
.
.
.
或者即使我能得到结果
df.delivery_time
570 minute
243 minute
455 minute
.
.
.
您可以将 Millisecond
转换为例如。 Minute
仅丢失精度。这是一个四舍五入到最近的分钟的例子:
@. Minute(round(Int, Dates.value(delivery_time) / (1000 * 60)))
如果您不需要 Minute
值而只是简单地浮动而不四舍五入,您可以这样做:
@. Dates.value(delivery_time) / (1000 * 60)
或例如
Dates.value.(delivery_time) / (1000 * 60)
如果您不想使用 @.
。
终于可以写了
Time(0) .+ delivery_time
这是无损的,但现在返回的对象不是 Period
的子类型,它将 "wrap around" 24 小时。如果您想避免换行,请使用 DateTime
而不是上面的 Time
。
非常感谢您的帮助。你解决了我的大部分问题。我很天真,但在朱莉娅一周前就开始了。
我实际上用过 -
df.delivery_time = map((x) -> convert(Time,x),df[:15])
结果是
783358-element Array{Time,1}:
09:30:00
04:03:00
07:35:00
02:33:00
03:46:00
01:56:00