我试图删除R中的矩阵中的一列(例如第1列)的一些重复的行。 如何从列中的一列提取唯一集矩阵? 我用x_1 <- x[unique(x[,1]),]
,大小是正确的,但所有的值都是NA。 等等。我试图用x_1 <- x[-duplicated(x[,1]),]
来代替。但尺寸不对。如何删除矩阵中的列中的重复行R
有什么想法吗?
非常感谢你提前,
我试图删除R中的矩阵中的一列(例如第1列)的一些重复的行。 如何从列中的一列提取唯一集矩阵? 我用x_1 <- x[unique(x[,1]),]
,大小是正确的,但所有的值都是NA。 等等。我试图用x_1 <- x[-duplicated(x[,1]),]
来代替。但尺寸不对。如何删除矩阵中的列中的重复行R
有什么想法吗?
非常感谢你提前,
我想你感到困惑子集在R. unique(x[,1])
如何工作将返回该组唯一值的第一列。如果您然后尝试子集使用这些值R认为您指的是行的矩阵。所以你可能会得到NAs,因为这些值是指矩阵中不存在的行。
您的其他尝试违反duplicated
返回布尔值这一事实,而不是索引向量。所以在它前面放一个减号将它转换为0和-1的向量,R再次解释为试图引用行。
尝试用'!'代替' - '在duplicated
之前,这是布尔否定运算符。事情是这样的:
m <- matrix(runif(100),10,10)
m[c(2,5,9),1] <- 1
m[!duplicated(m[,1]),]
感谢您的详细解答! – verda
它为我工作! thanksss! –