【问题标题】:Calculate the 15 min time bin the current time falls into using go使用 go 计算当前时间落入的 15 分钟时间 bin
【发布时间】:2022-02-16 02:13:29
【问题描述】:

所以我不知道如何计算当前时间的 15 分钟时间箱。 一天有1440分钟。所以 96 - 15 分钟的垃圾箱。那么如何计算 golang 中的时间 bin 呢?

func getCurrentMinutes(current time.Time) (int, error) {
   min, err := strconv.Atoi(current.Format("04"))
   if err != nil {
      return 0, err
   }
   return min, nil
}
func GetTimeBin(current time.Time, binDuration float64) float64 {
     min, _ := getCurrentMinutes(current)
     bin := float64(min) / binDuration
     return math.Ceil(bin)
}

我所做的上述实现是错误的,因为我正在考虑 15 分钟的垃圾箱一小时。我需要在当天的上下文中找到当前时间的 15 分钟 bin。

提前致谢!

【问题讨论】:

  • "一天有 1440 分钟。"这是错误的,除非你可以保证你所有的时间值都是 UTC,即使那样你仍然可以考虑leap seconds

标签: go machine-learning time


【解决方案1】:

这是我想出的工作示例。

func GetTimeBin(current time.Time, binDuration float64) float64 {
  hours := current.Hour()
  min := current.Minute() + hours*60
  bin := float64(min) / binDuration
  return math.Ceil(bin)
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-28
    • 2021-04-13
    • 1970-01-01
    • 2021-03-14
    • 1970-01-01
    • 2014-07-11
    相关资源
    最近更新 更多