【问题标题】:Extract Time and date from POSIXct从 POSIXct 中提取时间和日期
【发布时间】:2016-03-29 16:58:04
【问题描述】:

我有一个带有 DateTime 字符的向量(“2014-04-17 23:33:00”),并且想要制作一个以日期和时间为列的矩阵。

这是我的代码:

  dat <- as.POSIXct(dates)
  date = data.frame(
   date=dat,
   time=format(dat, "%H:%M")
  )

我查看了extract hours and seconds from POSIXct for plotting purposes in R,它有所帮助,但问题是我的时间列中的时间只有 00:00。它不会从日期向量中提取时间。

感谢任何帮助。

【问题讨论】:

  • POSIX*t 是日期时间对象,而不仅仅是日期或时间。如果不插入日期,则默认为当前日期;如果您不插入时间,则默认为午夜。如果您真的不能只对所有内容使用 POSIX*t(您可能应该这样做,因为您有日期时间),您可以使用备用日期/时间对象。选项包括内置的Date 格式(as.Date)以及来自lubridatechron 包的各种选项。

标签: r posixct


【解决方案1】:

以如下向量为例:

dates<- c("2012-02-06 15:47:00","2012-02-06 15:02:00")
dat <- as.POSIXct(dates)
date.df = data.frame(
  date=dat,
  time=format(dat, "%H:%M")
)

您将获得正确的时间 ("%H:%M")

> date.df
             date  time
1 2012-02-06 15:47:00 15:47
2 2012-02-06 15:02:00 15:02

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-21
    • 1970-01-01
    • 2018-02-04
    • 2017-02-01
    • 2020-12-19
    • 2014-11-20
    相关资源
    最近更新 更多