使用 R 包 lubridate 的 seconds_to_period 函数后,如何将秒舍入到 2 个位置?

How can I round seconds to 2 places upon using R package lubridate's seconds_to_period function?

我使用 R 包 Lubridate 的函数 seconds_to_period 将秒数转换为 DD:HH:MM:SS 格式。现在我有一个巨大的时间列表,看起来像这样 -> 2d 7H 1M 5.31500000000233S。我需要将秒数四舍五入到小数点后两位。
我尝试使用 round_dateymd_hms,但我收到了这个 error in as.POSIXct.numeric(x) : 'origin' must be supplied。我尝试过是否可以单独访问秒数并编写一个函数来更改它们但不能。我该如何解决这个问题?

附加了一个 duration.RData 文件和 durdata.R 文件作为参考数据。这两个文件具有相同的数据,但一个使用 dput(),另一个使用 save()。 Link : link to files

我们可以使用 round 来格式化 "Period" 对象中的小数位。

head(round(time, 2))
#[1] "2d 7H 1M 5.32S"   "1d 9H 20M 37.49S" "7H 39M 37.95S" "2d 5H 0M 41.01S" 
#    "1d 8H 32M 2.8S"   "6H 36M 25.19S"