在R中转换日期时如何处理空白项目

Tyl*_*den 5 r missing-data na as.date

我从管理信息系统中下载了csv数据。有一些变量是日期,它们以格式为“ 2012/11/16 00:00:00”的字符串形式写在csv中。

读取csv文件后,我使用as.Date()函数将日期变量转换为日期。对于不包含任何空白项的所有变量,此方法都适用。

对于那些确实包含空白项目的消息,我会收到以下错误消息:“字符字符串不是标准的明确格式”

我怎样才能用R替换“ 0000/00/00 00:00:00”之类的空白项目,以使as.Date()函数不会中断?您可能还会推荐其他方法吗?

Ben*_*ker 3

如果它们是字符串,则执行简单的操作

mystr <- c("2012/11/16 00:00:00","   ","")
mystr[grepl("^ *$",mystr)] <- NA
as.Date(mystr)
Run Code Online (Sandbox Code Playgroud)

工作?(正则表达式"^ *$"查找由字符串开头 ( ^)、零个或多个空格 ( *) 以及字符串结尾 ( $) 组成的字符串。更一般地说,我认为您可以用来"^[[:space:]]*$"捕获其他类型的空白(制表符等) .)