Nic*_*ick 5 r vector unique matrix duplicates
我有一个矩阵:
A<-t(matrix(
c(0, 0, 1,
0, 0, 0,
0, 0, 1,
0, 0, 1,
0, 0, 0,
1, 1, 0), 3, 6))
Run Code Online (Sandbox Code Playgroud)
我需要保留只出现一次的列。因此,预期结果只是第三列:(1, 0, 1, 1, 0, 0)。
看起来我们需要一个 double duplicated。
A[, !(duplicated(t(A)) | duplicated(t(A), fromLast = TRUE)), drop = FALSE]
[,1]
[1,] 1
[2,] 0
[3,] 1
[4,] 1
[5,] 0
[6,] 0
Run Code Online (Sandbox Code Playgroud)
这个想法也适用于向量。
x <- c(1, 1, 2, 3, 4, 3, 4, 5)
x[!(duplicated(x) | duplicated(x, fromLast = TRUE))]
[1] 2 5
Run Code Online (Sandbox Code Playgroud)