首页 > 解决方案 > R中的矩阵运算:从两个矩阵的值中填充新矩阵

问题描述

我有两个矩阵作为不同的 csv,如下图所示。 在此处输入图像描述

Matrix1) x 上的元素系列,跨 y 中的站

Matrix2) x 上的一系列电荷,跨 y 上的元素

我想创建包含以下内容的 MATRIX 3: 站为 Y(列) 费用为 X(行) 费用是站中每个元素的乘积*该特定费用和所有值的加法。它在图像中更有意义。我可以在 Excel 中手动执行此操作,但要处理数百个观察结果既乏味又耗时,而且我需要更改每一行的值。我知道有一些方法可以通过将我的数据帧转换为矩阵(as.matrix)来使用 R 执行此操作,但是我看到的所有示例都指定了矩阵和行/列中的所有值。这似乎比手动列出这么多观察结果的 excel 更乏味。

我只是不知道其他选择,并想询问是否有人有这种事情的经验。

先感谢您。我再次问了这个问题以供 Excel 使用,以防万一可能有一个更快的解决方案,并且编码学习曲线不那么陡峭。

标签: rcsvmatrixmatrix-multiplication

解决方案


这只是内在产品。运营商是%*%

mat1 <- matrix(c(
  .5,0,0,0,0,0,0,.25,0,0,.231,0,3,0,.25,0,0,.75,0,0,0,.5,0,0,1.5), 
  ncol=5)
mat2 <- matrix(c(1,3,2,0,0,2,1,2,1,0,0,1,0,0,4), ncol=3)
mat1 %*% mat2

#       [,1]  [,2] [,3]
# [1,] 0.962 1.462 0.00
# [2,] 0.000 0.000 2.00
# [3,] 6.750 7.000 0.25
# [4,] 0.000 0.000 0.00
# [5,] 0.500 0.500 6.00

推荐阅读