簡體   English   中英

R-僅刪除動物園對象的空行的一部分

[英]R - Removing only one part of the empty rows of a zoo objects

我將幾個時間序列合並在一起,需要對數據進行子集處理,以便第一行沒有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

我想獲得的是一個新的Zoo矩陣,該矩陣從沒有NA的第一行開始(例如,從上例中的第四行開始),最后必須保留第一行以下的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

我嘗試了不同的方法,但是我真的不知道該怎么做。 有什么建議么?

嘗試使用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[.]")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM