用空白替换日期列中的 NA

replace NA in date column with blank

我的数据框中有一个日期列,其中包含一些 NA 值。我正在尝试使用命令 df$FirstDate[is.na(df$FirstDate)] <- " "
将此 NA 值替换为空白 我收到一个错误

Error in charToDate(x) : character string is not in a standard unambiguous format

不确定如何修复此错误。非常感谢有关此主题的任何帮助。

这是日期列

dput输出
df = structure(c(NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_), class = "Date")

您的 df$FirstDate 列属于 class Date

这意味着您尝试在此列中分配的任何非 NA 值都将被强制转换为 class Date,并且在强制转换过程中您会看到此错误因为字符串 " " 不是标准的明确格式,无法转换为 class Date.

如果您绝对想用空格替换 NAs,请先将 df$FirstDate 列转换为 class character,如下所示:

> df$FirstDate <- as.character(df$FirstDate)

现在,继续 运行:

> df$FirstDate[is.na(df$FirstDate)] <- " "

我也有类似的美容问题。

尝试将列转换为 as.character.Date

df$FirstDate <- as.character.Date(df$FirstDate)