0

我正在尝试将 AM/PM 格式的日期和时间转换为 as.posixct ,但是对于每个 00:00:00 ,我都会得到 NA。请指导我。请参考下图。在此处输入图像描述

我尝试使用 FOR 循环的代码

i=0
  for (i in 1:nrow(clean_df)){
  if((is.na(clean_df$Local_time)[i]) ==  TRUE){
  #cat("",clean_df$Local_time[i])
  clean_df$Local_time[i] <- paste("",as.Date(clean_df$Local_time[i-1]),"00:00:00")
  }
    print(nrow(clean_df)-i)

}  

但以上代码执行时间较长,不推荐。要求您对此提供任何解决方案。

4

1 回答 1

1

鉴于您的某些原始数据可能缺少时间组件,当您希望它在转换为 POSIXct 时出现时,我看不出有任何方法可以清理您的数据。但是,您可以尝试以矢量化方式进行擦洗,这可能会更好:

clean_df$Local_time <- ifelse(nchar(clean_df$Local_time) == 10,
                              paste(clean_df$Local_time, "00:00:00"),
                              clean_df$Local_time)
于 2019-03-01T05:28:54.370 回答