如何在R中找到矩阵值的组合?

要在 R 中找到矩阵值的组合,我们可以使用expand.grid带有拆分函数的函数。

例如,如果我们有一个名为 M 的矩阵,那么为了创建矩阵值的组合,我们可以使用下面提到的代码 -

do.call(expand.grid,split(M,rep(1:nrow(M),ncol(M))))

查看下面给出的示例以了解它是如何工作的。

示例 1

以下代码段创建了一个矩阵 -

M1<-matrix(rpois(10,2),ncol=5)

M1

输出结果

创建以下矩阵 -

    [,1] [,2] [,3] [,4] [,5]

[1,]  1   1    3    3    3

[2,]  1   3    2    1    1

为了在 R 中找到矩阵值的组合,将以下代码添加到上面的代码片段中 -

M1<-matrix(rpois(10,2),ncol=5)

do.call(expand.grid,split(M1,rep(1:nrow(M1),ncol(M1))))

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

   1  2

1  1  1

2  1  1

3  3  1

4  3  1

5  3  1

6  1  3

7  1  3

8  3  3

9  3  3

10 3  3

11 1  2

12 1  2

13 3  2

14 3  2

15 3  2

16 1  1

17 1  1

18 3  1

19 3  1

20 3  1

21 1  1

22 1  1

23 3  1

24 3  1

25 3  1

示例 2

以下代码段创建了一个矩阵 -

M2<-matrix(rpois(9,2),ncol=3)

M2

输出结果

创建以下矩阵 -

    [,1][,2] [,3]

[1,] 3   1    3

[2,] 0   2    1

[3,] 5   1    0

为了在 R 中找到矩阵值的组合,将以下代码添加到上面的代码片段中 -

M2<-matrix(rpois(9,2),ncol=3)

do.call(expand.grid,split(M2,rep(1:nrow(M2),ncol(M2))))

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

   1  2  3

1  3  0  5

2  1  0  5

3  3  0  5

4  3  2  5

5  1  2  5

6  3  2  5

7  3  1  5

8  1  1  5

9  3  1  5

10 3  0  1

11 1  0  1

12 3  0  1

13 3  2  1

14 1  2  1

15 3  2  1

16 3  1  1

17 1  1  1

18 3  1  1

19 3  0  0

20 1  0  0

21 3  0  0

22 3  2  0

23 1  2  0

24 3  2  0

25 3  1  0

26 1  1  0

27 3  1  0

以上是 如何在R中找到矩阵值的组合? 的全部内容, 来源链接: utcz.com/z/338671.html

回到顶部