gpt4 book ai didi

R-日期时间变量在 ifelse 后丢失格式

转载 作者:行者123 更新时间:2023-12-04 12:26:11 25 4
gpt4 key购买 nike

我有一个正确 POSIXct 格式的变量,用 ymd_hms(DateTime) {lubridate} 转换。
但是,在转换之后,变量会丢失其 POSIXct 格式:

daily$DateTime<- ifelse(daily$ID %in% "r1_1"|daily$ID %in% "r1_2", 
NA,daily$DateTime)

我尝试使用 lubridate 再次将变量转换为 POSIXct,但它似乎不喜欢 NA,此外,现在变量 DateTime 具有 num 格式,lubridate 无法将其识别为日期和时间格式(例如1377419400)。

拜托,当 ID== r1_1 和 r1_2 时,任何帮助进行所需的转换以将 DateTime 转换为 NA ?

谢谢

最佳答案

设置 NA 值的惯用方法是使用 is.na<- ,大多数类(包括日期)将被适当处理

 is.na(daily$DateTime) <- daily$ID %in% c('r1_1', 'r1_2')

应该做的伎俩。

使用 ?as.POSIXct 中的示例
  ## SPSS dates (R-help 2006-02-16)
z <- c(10485849600, 10477641600, 10561104000, 10562745600)
zz <- as.POSIXct(z, origin = "1582-10-14", tz = "GMT")

is.na(zz) <- c(FALSE, TRUE, FALSE, FALSE)
zz
# [1] "1915-01-26 GMT" NA "1917-06-15 GMT" "1917-07-04 GMT"

关于R-日期时间变量在 ifelse 后丢失格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19019820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com