R - 仅删除动物园对象的空行的一部分

时间:2016-11-09 13:45:52

标签: r

我已将几个时间序列合并在一起,我需要对数据进行子集化,以便第一行没有NA。在第一行下方可以有NA,即使在整行中也是如此。我将不得不通过插值来处理它们。 这是一个简化的数据示例:

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, string given in J:\file.php on line 3484 (error in variable $getFirst8Comments)

我想要获得的是从没有NA的第一行开始的新动物园矩阵(即,从上面示例中的第四行开始),第一行下面的最终NA行必须保持不变。我想获得这个:

DF <- data.frame(x = c(NA, NA, 3, 2, 6, NA, 5), y = c(NA, NA, 24, 11, NA, NA, 8), z=c(NA, NA, NA, 33, 22, NA, 19))
date <- c("2001-03-30", "2001-03-31", "2001-04-01", "2001-04-02", "2001-04-03", "2001-04-04", "2001-04-05")
DFz <- zoo(DF, order.by = date)
DFz
x  y  z
2001-03-30 NA NA NA
2001-03-31 NA NA NA
2001-04-01  3 24 NA
2001-04-02  2 11 33
2001-04-03  6 NA 22
2001-04-04 NA NA NA
2001-04-05  5  8 19

我尝试过不同的方法,但我真的不知道该怎么做。 有什么建议吗?

1 个答案:

答案 0 :(得分:2)

尝试发送na.trim方法的na.trim.zoo

na.trim(DFz, sides = "left")

,并提供:

            x  y  z
2001-04-02  2 11 33
2001-04-03  6 NA 22
2001-04-04 NA NA NA
2001-04-05  5  8 19

默认na.trim从两边修剪,因此我们使用sides来确保保留尾随的NA。

注意:您可能希望熟悉各种na.*动物园方法。它们应列在此命令的输出中:

apropos("^na[.]")