如何替换日期列中的NA

时间:2016-10-06 15:26:56

标签: r na missing-data rbind as.date

我的数据框中有一个包含日期的列,因此它是一个日期类。但是,当我尝试从此列中删除NA时,我不能,因为它不是一个字符类。所以我使用这个解决方案将它转换为角色类:

Setting to Blank

然后我仍然希望我的日期列成为日期类,所以我使用as.Date将其转换回来,然后再次生成NA。所以我陷入了这个循环。如果需要一个例子,我将在下次会议后添加它。我想将NA转换为空白,因为我将rbind用于另一个没有NA的数据帧。

以下是我所指的代码:

> df1
        Date File
1 2016-10-20    1
2 2016-10-18    2
3       <NA>    3

> str(df1)
'data.frame':   3 obs. of  2 variables:
 $ Date: Date, format: "2016-10-20" "2016-10-18" NA
 $ File: chr  "1" "2" "3"

> df1 <- sapply(df1, as.character)

> df1[is.na(df1)] <- ""

> df1
     Date         File
[1,] "2016-10-20" "1" 
[2,] "2016-10-18" "2" 
[3,] ""           "3" 

> df1 <- as.data.frame(df1)

> df1$Date <- as.Date(df1$Date, format = "%Y-%m-%d")

> df1
        Date File
1 2016-10-20    1
2 2016-10-18    2
3       <NA>    3

所以我只想知道df1 [1,3]是否可以是Date类并且是空白的。

1 个答案:

答案 0 :(得分:0)

试试na.omit(df1), 它将删除所有具有NA值的行..