【问题标题】:R. Convert TimeStamp column from DataFrame to Date Format columnR. 将 TimeStamp 列从 DataFrame 转换为 Date Format 列
【发布时间】:2022-02-01 17:52:44
【问题描述】:

我有一个问题。

有一列带有时间戳记录,例如“1643410273”(总计超过 120 万条记录)。如何将其转换为日期格式?

我创建了这段代码(R 语言):

mydata <- read.csv("summary_dataset.csv")
unique(mydata$Callsign)
flight <- mydata[mydata$Callsign == "AFR228",]
AltitudeValue <- flight$Altitude
UTC_Timestamp <- flight$Timestamp
Flight_Date <- vector()

for (i in 1:length(UTC_Timestamp)){
  Flight_Date[i]=as.POSIXct(UTC_Timestamp[i], origin='1970-01-01', tz="UTC")
}

Flight_Date

但是,结果,向量 Flight_Date 被填满了 Timestamp 记录。怎么了?

【问题讨论】:

  • flight$Flight_Date &lt;- as.Date(as.POSIXct(as.numeric(flight$Timestamp), origin='1970-01-01', tz="UTC"))

标签: r date vector type-conversion timestamp


【解决方案1】:

首先将Timestamp 列转换为数字,通过传递origin 将其更改为POSIXct 格式并仅从中提取日期。

flight$Flight_Date <- as.Date(as.POSIXct(as.numeric(flight$Timestamp), 
                              origin='1970-01-01', tz="UTC"))

例子-

as.POSIXct(1643410273, origin='1970-01-01', tz="UTC")
#[1] "2022-01-28 22:51:13 UTC"

as.Date(as.POSIXct(1643410273, origin='1970-01-01', tz="UTC"))
#[1] "2022-01-28"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-02-26
    • 2021-08-30
    • 2020-08-24
    • 2015-06-27
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    相关资源
    最近更新 更多