有没有办法找到矩阵的一行是否包含在矩阵中但以相反的方式?
例如,这发生在以下矩阵中W:
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
[1,] 1 1 1 2 2 2 3 3 3
[2,] 1 2 3 1 2 3 1 2 3
[3,] 3 3 3 2 2 2 1 1 1
在第一排和第三排之间。
我已经开发了以下代码,但它仅在矩阵中以相反的方式存在行时才有效:
WW=W[, rev(seq_len(ncol(W)))]
x=match(data.frame(t(W)), data.frame(t(WW)))
A=cbind( c(1:nrow(W)),x )
Z=t(apply(A,1,sort))
x=unique(Z[,2])
W=W[-x,]
所以,在前面的矩阵W中,我的代码不起作用,因为NA在代码的第二行的结果中。
我们如何解决这个问题?