请允许我详细说明。基本上,我有一个包含 4 列的数据框,其中一列中有 NA。当 NA 确实发生时,它们总是成组出现。我逐行遍历这个数据框,查看列。我想要做的是,一旦找到 NA,我想在达到正常值之前将该行中的数据帧子集到最后出现 NA 的行。
例如,假设我们查看我的数据框 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,然后我想将第 4 行的 df 子集到第 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 行子集。
我该怎么做呢?