如何将R数据帧中的时间戳转换为日期

时间:2016-09-27 07:05:56

标签: r dataframe

我有一个包含多列的R数据框,其中一列包含时间戳。

df <- data.frame(id=c(1:4), timestamp=c(123513,2,3,4))

我遇到的问题是尝试将时间戳123513(整数)转换为日期(“1970-01-02”)。

我有一个如下功能,我希望适用于所有时间戳。

timestamp_to_date <- function(timestamp) {
    return (as.Date(as.POSIXct(timestamp, origin="1970-01-01", tz="Australia/Melbourne")))
}

1 个答案:

答案 0 :(得分:0)

正如其他人所说,这应该有效:

df <- data.frame(id=c(1:4), timestamp=c(123513,2,3,4))

timestamp_to_date <- function(timestamp) {
  return (as.Date(as.POSIXct(timestamp, origin="1970-01-01", tz="Australia/Melbourne")))
}

df$timestamp = timestamp_to_date(df$timestamp)

> df
  id  timestamp
1  1 1970-01-02
2  2 1970-01-01
3  3 1970-01-01
4  4 1970-01-01