如何找到 R 矩阵中所有行值相等的列数?
r programmingserver side programmingprogramming更新于 2025/4/7 11:07:17
要找到 R 矩阵中所有行值相等的列数,我们可以按照以下步骤 −
首先,创建一个矩阵。
然后,使用 sum 函数以及 length 和 apply 函数来查找所有行值相等的列数。
示例 1
创建矩阵
让我们创建一个如下所示的矩阵 −
M1<-matrix(rpois(50,5),ncol=2) M1
输出
执行时,上述脚本将生成以下输出(由于随机化,此输出将因您的系统而异) −
[,1] [,2] [1,] 10 3 [2,] 5 7 [3,] 4 5 [4,] 3 8 [5,] 8 4 [6,] 3 6 [7,] 4 3 [8,] 4 4 [9,] 4 4 [10,] 5 6 [11,] 4 2 [12,] 2 3 [13,] 3 3 [14,] 4 3 [15,] 5 5 [16,] 5 7 [17,] 5 1 [18,] 4 5 [19,] 2 3 [20,] 5 2 [21,] 7 3 [22,] 6 6 [23,] 6 2 [24,] 3 2 [25,] 0 6
查找所有行值相等的列数
使用 sum 函数以及 length 和 apply 函数查找矩阵 M1 中所有行值相等的列数 −
M1<-matrix(rpois(50,5),ncol=2) sum(apply(M1, 1, function(x) length(unique(x))==1))
输出
[1] 7
示例 2
创建矩阵
让我们创建一个如下所示的矩阵 −
M2<-matrix(sample(1:5,50,replace=TRUE),ncol=2) M2
输出
执行时,上述脚本将生成以下输出(由于随机化,此输出将因您的系统而异) −
[,1] [,2] [1,] 3 4 [2,] 4 1 [3,] 4 3 [4,] 1 2 [5,] 2 1 [6,] 1 4 [7,] 1 3 [8,] 3 4 [9,] 3 1 [10,] 2 5 [11,] 2 2 [12,] 1 1 [13,] 3 1 [14,] 1 5 [15,] 3 3 [16,] 3 4 [17,] 3 4 [18,] 4 4 [19,] 2 5 [20,] 4 4 [21,] 2 5 [22,] 5 2 [23,] 4 4 [24,] 4 5 [25,] 2 3
查找所有行值相等的列数
使用 sum 函数以及 length 和 apply 函数查找矩阵 M2 中所有行值相等的列数 −
M2<-matrix(sample(1:5,50,replace=TRUE),ncol=2) sum(apply(M2, 1, function(x) length(unique(x))==1))
输出
[1] 6