R:转换数据表的日期列

tuyile006 阅读:27 2025-02-15 21:57:57 评论:0

<分区>

我有一个 CSV 表,其中包含一个包含不同格式日期字符串的日期列。我想编写一个小函数来尝试将这些字符串转换为日期对象。想法是尝试不同的日期格式,直到可以解析日期:

parseDate <- function(date){ 
  formats <- c("%d.%m.%y %H:%M", "%Y-%m-%d %H:%M:%S", "%m-%d-%Y-%H:%M:%S") 
 
  for(format in formats){ 
    newDate <- strptime(date, format=format) 
    if(!is.na(newDate)){ 
      return(newDate) 
    } 
  } 
 
  print(paste0("Invalid input: ", date)) 
  return(NA) 
} 
 
column1 <- c("2014-11-14 14:20:16", "24.11.14 9:48", "24.11.14 9:49") 
table <- data.frame(column1) 
 
table$column1 = lapply(table$column1, FUN = parseDate) 

问题是我找不到将此函数应用于该列的正确方法。我尝试了 lapplyapplyby,但这些函数都没有提供所需的输出。你能帮我吗?


标签:日期
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号