如何找到R矩阵中重复次数最多的行?
要在R矩阵中找到重复次数最多的行,我们可以按照以下步骤操作-
首先,创建一个矩阵。
然后,将矩阵转换为data.table然后使用带有head函数的order函数来查找具有最大重复数的行。
创建矩阵
让我们创建一个矩阵,如下所示-
例子
M<-matrix(rpois(40,1),ncol=2) M
执行时,上述脚本生成以下内容output(thisoutputwillvaryonyoursystemduetorandomization)-
输出
[,1] [,2] [1,] 2 2 [2,] 0 1 [3,] 2 2 [4,] 1 0 [5,] 1 2 [6,] 3 0 [7,] 1 0 [8,] 0 0 [9,] 0 3 [10,] 0 1 [11,] 1 0 [12,] 1 0 [13,] 1 1 [14,] 0 1 [15,] 1 2 [16,] 0 0 [17,] 1 0 [18,] 1 1 [19,] 2 2 [20,] 1 2
查找具有最大重复数的行
加载data.table包然后将矩阵M转换为data.table对象并找到具有最大重复数的行-
例子
M<-matrix(rpois(40,1),ncol=2) library(data.table) DT<-data.table(M) head(DT[,list(Duplicates=.N),by=names(DT)][order(Duplicates,decreasing=T)],1)
输出
V1 V2 Duplicates 1: 1 0 5