我需要根據組篩選時間序列數據。然而,過濾必須在每個組的開始(-5分鐘)和結束(-2分鐘)完成,這意味着我想要在每個組的開始(-5分鐘)和結束(-2分鐘)刪除行組。R爲每個組篩選時間序列數據
下面是示例代碼:
Time <- c("2015-08-21T10:00:51", "2015-08-21T10:02:51", "2015-08-21T10:04:51", "2015-08-21T10:06:51",
"2015-08-21T10:08:51", "2015-08-21T10:10:51","2015-08-21T10:12:51", "2015-08-21T10:14:51",
"2015-08-21T10:16:51", "2015-08-21T10:18:51", "2015-08-21T10:20:51", "2015-08-21T10:22:51")
x <- c(38.855, 38.664, 40.386, 40.386, 40.195, 40.386, 40.386, 40.195, 40.386, 38.855, 38.664, 40.386)
y <- c("a", "a", "a", "a", "a", "a", "b", "b", "b", "b", "b", "b")
data <- data.frame(Time,x,y)
data$Time <- as.POSIXct(data$Time, format = "%Y-%m-%dT%H:%M:%S")
Y列顯示我們的基團,其在該特定情況下是一個和b
因此,對於這個例子我會刪除3第一行和最後2行爲級別a,對於b相同的事情(在我的原始數據中,根據行數不會很容易將其刪除)。所以我最終會得到這樣的結果:
Time x y
4 2015-08-21 10:06:51 40.386 a
10 2015-08-21 10:18:51 38.855 b
我想指出,這只是樣本數據!
感謝您的幫助!
我寧願篩選基於時間列,而不是行數的數據,我原來的數據不會這麼好聽結構類似於每組行的這一個,數量會有所不同。
您能否進一步解釋在每組開始(-5分鐘)和結束(-2分鐘)時需要做什麼? – StrikeR
嘿,我剛剛在我的文章中解釋過它更好 –