【问题标题】:Convert a number to HH:MM:SS将数字转换为 HH:MM:SS
【发布时间】:2015-05-27 13:44:01
【问题描述】:

我有一个号码154958。我想转换成HH:MM:SS

我正在寻找的答案是15:49:58

【问题讨论】:

    标签: r datetime time


    【解决方案1】:

    这可能是上述答案的派生,但您可以使用“hms”包:

    library(hms)
    
    strptime("154958", "%H%M%S") %>% hms::as.hms()
    

    【讨论】:

      【解决方案2】:

      先转换为日期,再转换为子字符串:

      substr(strptime("154958", format = "%H%M%S"), 12, 20)
      

      甚至更好的版本(感谢@Roland):

      format(strptime("154958", format = "%H%M%S"), format = "%H:%M:%S")
      

      【讨论】:

      • format(strptime("154958",format="%H%M%S"), format="%H:%M:%S") 会更好。
      【解决方案3】:

      你可以试试下面的。

      > x <- "154958"
      > gsub("^(\\d{2})(\\d{2})(\\d{2})$", "\\1:\\2:\\3", x)
      [1] "15:49:58"
      > 
      

      > gsub("(\\d{2})(?!$)", "\\1:", x, perl=T)
      [1] "15:49:58"
      

      【讨论】:

      • 我认为gsub("(..)(..)(..)", "\\1:\\2:\\3", x) 对于第一个选项就足够了。
      • 您刚刚删除了perl=TRUE,但我的意思是您可以使用(..) 进一步简化它。我还看到你的大量反对票被推翻了。干杯。
      • 是的,我希望他的愤怒消失了。 :-)
      【解决方案4】:

      使用chron

      library(chron)
      times(chron(times = "154958", format = "hms"))
      ## [1] 15:49:58
      

      【讨论】:

        【解决方案5】:

        如果您想从中进行真正的约会,请尝试以下操作。

        strptime("154958", "%H%M%S")
        

        默认为当天,因此如果今天是 2015 年 3 月 24 日,您将获得:

        [1] "2015-03-24 15:49:58 CET"

        【讨论】:

          【解决方案6】:

          我会将其视为格式化输出:

          formatC(as.integer("154958"), 
                  big.mark = ":", big.interval = 2L)
          #[1] "15:49:58"
          

          【讨论】:

            【解决方案7】:

            或者更简单(因为是时间戳,所以字符数是已知的)

            paste(substr(x,1,2),substr(x,3,4),substr(x,5,6),sep=":")
            

            【讨论】:

            • paste(strsplit(x, '(?&lt;=\\d{2})(?=\\d{2})', perl=TRUE)[[1]], collapse=":")
            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2019-08-07
            • 1970-01-01
            • 2021-05-18
            • 2018-07-11
            • 1970-01-01
            • 1970-01-01
            • 2019-02-27
            相关资源
            最近更新 更多