Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
求R中矩阵中最常出现的元素_R - Fatal编程技术网

求R中矩阵中最常出现的元素

求R中矩阵中最常出现的元素,r,R,R中是否有函数可以查找矩阵中最常出现的元素??我有一个包含图像像素的矩阵。我想查找图像矩阵中最常出现的图像像素。我不想使用for循环,因为迭代一个图像的所有像素需要很长时间。我不知道有什么函数可以做但您可以直接使用以下功能: 我不知道任何函数可以直接执行此操作,但您可以使用以下函数: 设置一些测试数据 > (image = matrix(sample(1:10, 100, replace = TRUE), nrow = 10)) [,1] [,2] [,3] [,4] [,5]

R中是否有函数可以查找矩阵中最常出现的元素??我有一个包含图像像素的矩阵。我想查找图像矩阵中最常出现的图像像素。我不想使用for循环,因为迭代一个图像的所有像素需要很长时间。

我不知道有什么函数可以做但您可以直接使用以下功能:


我不知道任何函数可以直接执行此操作,但您可以使用以下函数:

设置一些测试数据

> (image = matrix(sample(1:10, 100, replace = TRUE), nrow = 10))
      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    4    4    2    7    2    2    3    8    2     5
 [2,]    7    3    2    6    6    5    7    8    1     3
 [3,]    7    5    7    9    4    9    4    8    2     7
 [4,]    5    3    4    2    1    5    9   10    9     5
 [5,]    9   10    7    2    7    4    9    1    1     9
 [6,]    2    3    5    1    2    8    1    5    9     4
 [7,]    5    4   10    5    9   10    1    6    1    10
 [8,]    6    3    9    7    1    1    9    2    1     7
 [9,]    5    9    4    8    9    9    5   10    5     4
[10,]   10    1    4    7    3    2    3    5    4     5
手动操作

> table(image)
image
 1  2  3  4  5  6  7  8  9 10 
12 12  8 12 15  4 11  5 14  7 
在这里,我们可以看到值5最常出现(15次)。要以编程方式获得相同的结果,请执行以下操作:

> which.max(table(image))
5 
5 
设置一些测试数据

> (image = matrix(sample(1:10, 100, replace = TRUE), nrow = 10))
      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    4    4    2    7    2    2    3    8    2     5
 [2,]    7    3    2    6    6    5    7    8    1     3
 [3,]    7    5    7    9    4    9    4    8    2     7
 [4,]    5    3    4    2    1    5    9   10    9     5
 [5,]    9   10    7    2    7    4    9    1    1     9
 [6,]    2    3    5    1    2    8    1    5    9     4
 [7,]    5    4   10    5    9   10    1    6    1    10
 [8,]    6    3    9    7    1    1    9    2    1     7
 [9,]    5    9    4    8    9    9    5   10    5     4
[10,]   10    1    4    7    3    2    3    5    4     5
手动操作

> table(image)
image
 1  2  3  4  5  6  7  8  9 10 
12 12  8 12 15  4 11  5 14  7 
在这里,我们可以看到值5最常出现(15次)。要以编程方式获得相同的结果,请执行以下操作:

> which.max(table(image))
5 
5 
在一行代码中获取模式(或多数值)

使用set.seed生成相同的随机矩阵

> set.seed(123)
> image = matrix(sample(1:10, 100, replace = TRUE), nrow = 10)
> image
       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
  [1,]    3   10    9   10    2    1    7    8    3     2
  [2,]    8    5    7   10    5    5    1    7    7     7
  [3,]    5    7    7    7    5    8    4    8    5     4
  [4,]    9    6   10    8    4    2    3    1    8     7
  [5,]   10    2    7    1    2    6    9    5    2     4
  [6,]    1    9    8    5    2    3    5    3    5     2
  [7,]    6    3    6    8    3    2    9    4   10     8
  [8,]    9    1    6    3    5    8    9    7    9     1
  [9,]    6    4    3    4    3    9    8    4    9     5
 [10,]    5   10    2    3    9    4    5    2    2     6)
矩阵的模式值(如果为tie,则其给出最小tie值)

在一行代码中获取模式(或多数值)

使用set.seed生成相同的随机矩阵

> set.seed(123)
> image = matrix(sample(1:10, 100, replace = TRUE), nrow = 10)
> image
       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
  [1,]    3   10    9   10    2    1    7    8    3     2
  [2,]    8    5    7   10    5    5    1    7    7     7
  [3,]    5    7    7    7    5    8    4    8    5     4
  [4,]    9    6   10    8    4    2    3    1    8     7
  [5,]   10    2    7    1    2    6    9    5    2     4
  [6,]    1    9    8    5    2    3    5    3    5     2
  [7,]    6    3    6    8    3    2    9    4   10     8
  [8,]    9    1    6    3    5    8    9    7    9     1
  [9,]    6    4    3    4    3    9    8    4    9     5
 [10,]    5   10    2    3    9    4    5    2    2     6)
矩阵的模式值(如果为tie,则其给出最小tie值)