我有一个日期字符列,我想强制转换为 Date 类:
df$x <- as.Date(df$x)
# Error in charToDate(x)
# character string is not in a standard unambiguous format
好的,我对这个错误很熟悉。我有类似的东西""
或90-Smarch-13"
在我的专栏中。问题是head(df$x)
看起来不错,正常 dates 2013-11-04
,所以这不是我的列的全局问题,而是只有几行的问题。
我的问题是:
- 我可以找出有多少行不是这种标准的明确格式吗?
- 我可以找到索引(以检查或删除它们)吗?
我的想法:
- 使用
try
:
for (i in 1:nrow(df)) try(as.Date$x[i]) # very slow, doesn't finish for 1M rows
- 尝试猜测问题使用的是什么
nchar
head(df[nchar(df$x) != 10 & !is.na(df$x), ]$x)
有没有更系统的方法?