r - 将数据框中的小时、分钟列转换为时间格式

标签 r type-conversion time-format datetime-conversion

我有一个包含 3 列的数据框,包括分钟和小时。
我想将这些列(即分钟和列)转换为时间格式。鉴于 drame 中的数据:

Score Hour Min
10    10    56
23    17    01

我想得到:
Score Time
10    10:56:00
23    17:01:00

最佳答案

您可以使用 ISOdatetime转换 hour 中的数字和 minPOSIXct目的。但是,POSIXct 对象仅在它还包括年、月和日时才被定义。所以根据你的需要可以做几件事:

  • 例如,如果您需要一个在图形中正确打印并且可用于算术(加法、减法)的实时对象,则需要使用 ISOdatetime . ISOdatetime返回一个所谓的 POSIXct对象,这是一个代表时间的R对象。然后在 ISOdatetime您只需为 year 使用固定值, month , 和 day .这当然仅适用于您的数据集不跨越多年的情况。
  • 如果您只需要一个字符列 Time ,您可以转换 POSIXct使用 strftime 输出到字符串.通过设置 format论据 "%H:%M:00" .但是,在这种情况下,您也可以使用 sprintf创建新字符列而不转换为 POSIXct :sprintf("%s:%s:00", drame$Hour, drame$Min) .
  • 关于r - 将数据框中的小时、分钟列转换为时间格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10089142/

    相关文章:

    R:当日出/日落时间发生变化时,将日/夜列添加到数据框中

    string - R:变量名到字符串

    swift - String 到 Date 的时间转换 : 12 is becoming 00 swift

    ruby - Ruby 中的字符串转换和子字符串让我感到困惑

    java - 将多键列表转换为多维排序映射

    android - SimpleDateFormat 表示还有 2 小时

    javascript - 如何使用 Javascript 将 ISO 8601 日期格式化为更易读的格式?

    Rmarkdown 文本突出显示未显示在 PDF 输出中

    r - 在管道运算符中传递值

    swift - Swift 中的向上转换和向下转换混淆?