我有一个包含3列的矩阵。 1.列在行中具有值1或0。我想删除矩阵中的所有行,其中1.列等于零(或保持包含1的行)。
感谢。
答案 0 :(得分:2)
所以,说你有这个矩阵:
A= matrix(c(1, 2, 3, 0, 3, 5, 1, 3, 8),3,3, byrow=T)
以下命令将为每行提供一个TRUE / FALSE向量,具体取决于第一列是否为1:
A[,1]==1
然后,您可以只选择这样的行:
FILTERED = A[A[,1]==1,]
然后,您将在FILTERED
答案 1 :(得分:1)
试试这个:
#dummy matrix
x <- matrix(rep(c(1,0,1),4),ncol=3)
x
# [,1] [,2] [,3]
# [1,] 1 0 1
# [2,] 0 1 1
# [3,] 1 1 0
# [4,] 1 0 1
#keep rows where 1st column equals to 1
x[x[,1] == 1,]
# [,1] [,2] [,3]
# [1,] 1 0 1
# [3,] 1 1 0
# [4,] 1 0 1