gpt4 book ai didi

r - 如果该行包含任何 "TRUE",则保留该行

转载 作者:行者123 更新时间:2023-12-05 08:43:13 24 4
gpt4 key购买 nike

我有一张像这样的 table

    C1      C2      C3      C4      C5....    
R1 FALSE FALSE TRUE TRUE
R2 FALSE FALSE NA TRUE
R3 NA NA NA TRUE
R4 NA FALSE FALSE FALSE
R5 NA NA NA NA
.
.
.

我想保留至少包含一个 TRUE 的所有行。在该表中,R1、R2 和 R3 需要保留。然后,我可以从同一个表中提取另一列 (C21) 的值。

请多多指教,谢谢!

最佳答案

# Example
x <-
matrix(c(FALSE, FALSE, NA, NA, NA, FALSE, FALSE, NA, FALSE, NA, TRUE, NA, NA, FALSE, TRUE, TRUE, FALSE, NA),
nrow = 5, ncol = 4, dimnames = list(paste0("R", 1:5), paste0("C", 1:4)))
x
# C1 C2 C3 C4
# R1 FALSE FALSE TRUE TRUE
# R2 FALSE FALSE NA FALSE
# R3 NA NA NA NA
# R4 NA FALSE FALSE FALSE
# R5 NA NA TRUE FALSE

# apply the 'any()' function to the rows, this will return true if there is at
# least one TRUE in the row

apply(x, 1, any)
# R1 R2 R3 R4 R5
# TRUE NA NA NA TRUE

# use 'which' to get the row index

which(apply(x, 1, any))
# R1 R5
# 1 5

# subset the matrix
idx <- which(apply(x, 1, any))

x[idx, ]
# C1 C2 C3 C4
# R1 FALSE FALSE TRUE TRUE
# R5 NA NA TRUE FALSE

关于r - 如果该行包含任何 "TRUE",则保留该行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33129817/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com