請允許我詳細說明。基本上,我有一個有4列的數據框,其中一列有NA。當NA發生時,它們總是以組的形式出現。我正在循環遍歷這個數據框,看着列。我想要做的就是儘快找到NA,我想在達到正常值之前,將該行的數據框與最後一次出現NA的行進行子集劃分。如何基於下一次出現在R中爲數據框子集?
因此,舉例來說,假設我們看看我的數據幀DF:
C1 C2 C3 C4 C5 C6
R1 2 1 2 1 0 0
R2 2 2 1 1 0 0
R3 0 0 1 1 2 1
R4 2 2 1 NA 0 0
R5 0 0 1 NA 2 1
R6 0 0 1 NA 2 1
R7 2 2 1 NA 0 0
R8 0 0 1 1 2 1
R9 2 1 2 1 0 0
R10 2 2 1 1 0 0
R11 0 0 1 1 2 1
R12 2 2 1 NA 0 0
R13 0 0 1 NA 2 1
R14 0 0 1 NA 2 1
當我再通過排DF行循環,我在第4行來翻過第一NA,然後我想子集df從第4行到第7行,這是最後一個NA在這個特定的一組NA中的位置。
子集:
R4 2 2 1 NA 0 0
R5 0 0 1 NA 2 1
R6 0 0 1 NA 2 1
R7 2 2 1 NA 0 0
請注意,我沒有用NA子集中的所有行,只是目前的「組」 NA的我一直在尋找。我沒有從第12-14行開始分組。
我該怎麼做?
你想要列表中的每一組這些行(連續NA行)? (假設你有更多的行,這可能會發生多次)。 – Arun
也只有C4總是有NAs嗎? – Arun
@Arun,我希望將子集放入一個新的數據框中,所以看上面的例子,只要遇到第4行中的NA,我就想在NA中找到最後一個NA,然後進行相應的子集。所以基本上我想我的子集是:subset = df [4:7,]。問題是要找出最後一行去。 – user2560984