0

我有一列包含一堆时间戳,例如 2:03:45,它们代表 2 小时、3 分钟和 45 秒(不是下午 2:03)。我想知道如何将 2:03:45 转换为分钟值,即 123 + 45/60 分钟。

我用过strsplit(x$time, ":"),所以现在它是分开的。有没有办法可以在行中运行 for 循环,以便花费小时 * 60 + 分钟 + 秒/60?谢谢。

4

1 回答 1

1

安装 chron 包

 install.packages("chron")

加载库

  library(chron)

生病创建一个时间戳字符串来玩

d=c("2:20:34","3:12:22")

将数据读入日期时间类

df=strptime(d,format='%H:%M:%S')

> minutes(df)
[1] 20 12
> hours(df)
[1] 2 3
> seconds(df)
[1] 34 22

所以我们需要做的就是从这三个中计算分钟

   timeinminutes= 60*hours(df)+minutes(df)+seconds(df)/60
于 2013-09-25T20:53:31.627 回答