R 编程:查找列表中所有矩阵对应元素的和
要在 R 中查找列表中所有矩阵对应元素的和,我们可以使用带加号的 Reduce 函数。例如,如果我们有一个名为 LIST 的列表,其中包含多个矩阵,并且我们想找到对应元素的和,则可以使用以下命令:
Reduce("+",LIST)
查看下面的示例以了解其工作原理。
示例 1
要在 R 中查找列表中所有矩阵对应元素的和,请使用以下代码片段:
List<- list(M1=matrix(round(rnorm(40),2),ncol=2),M2=matrix(round(rnorm(40),2),ncol=2),M3=matrix(round(rnorm(40),2),ncol=2)) List
创建以下矩阵:
$M1 [,1] [,2] [1,] -0.34 -2.36 [2,] 0.33 1.17 [3,] 1.05 1.97 [4,] 0.46 1.09 [5,] 0.34 0.45 [6,] 0.78 1.43 [7,] -0.07 -0.08 [8,] 0.29 -1.13 [9,] -0.62 0.72 [10,] 1.85 0.82 [11,] -0.08 -0.85 [12,] 0.14 -0.47 [13,] 1.16 -0.46 [14,] 0.88 0.95 [15,] -0.68 -2.30 [16,] 1.12 0.35 [17,] 0.06 -1.29 [18,] 0.78 -0.64 [19,] -0.36 0.07 [20,] -0.62 0.72 $M2 [,1] [,2] [1,] -0.17 0.39 [2,] -0.83 0.45 [3,] 0.64 0.50 [4,] 0.13 -1.00 [5,] -0.33 0.63 [6,] 0.71 1.12 [7,] 0.50 2.67 [8,] -0.86 -0.49 [9,] 0.94 0.75 [10,] -0.20 0.14 [11,] 1.37 -1.53 [12,] -0.94 0.43 [13,] -1.65 0.66 [14,] 1.27 -0.68 [15,] -0.07 -0.62 [16,] -0.82 0.06 [17,] -1.48 0.48 [18,] 0.82 0.11 [19,] -0.05 -0.01 [20,] 1.05 0.64 $M3 [,1] [,2] [1,] -1.49 0.49 [2,] 0.09 -0.73 [3,] -2.62 1.38 [4,] 0.72 -0.01 [5,] -1.28 0.01 [6,] -0.80 0.41 [7,] 0.14 0.47 [8,] -0.34 0.34 [9,] -0.72 1.05 [10,] -0.74 -0.70 [11,] -0.33 0.00 [12,] 0.89 0.26 [13,] 0.17 -0.30 [14,] -1.22 -0.91 [15,] -0.74 -0.05 [16,] -1.81 1.02 [17,] 0.88 0.41 [18,] -2.10 -0.16 [19,] -0.31 0.67 [20,] -1.00 1.76
要在上面创建的矩阵上查找存储在列表中的矩阵的对应元素的和,请将以下代码添加到上面的代码片段中:
List<- list(M1=matrix(round(rnorm(40),2),ncol=2),M2=matrix(round(rnorm(40),2),ncol=2),M3=matrix(round(rnorm(40),2),ncol=2)) Reduce("+",List)
输出
如果将以上所有代码片段作为单个程序执行,则会生成以下输出:
[,1] [,2] [1,] -2.00 -1.48 [2,] -0.41 0.89 [3,] -0.93 3.85 [4,] 1.31 0.08 [5,] -1.27 1.09 [6,] 0.69 2.96 [7,] 0.57 3.06 [8,] -0.91 -1.28 [9,] -0.40 2.52 [10,] 0.91 0.26 [11,] 0.96 -2.38 [12,] 0.09 0.22 [13,] -0.32 -0.10 [14,] 0.93 -0.64 [15,] -1.49 -2.97 [16,] -1.51 1.43 [17,] -0.54 -0.40 [18,] -0.50 -0.69 [19,] -0.72 0.73 [20,] -0.57 3.12
广告