全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
4953 5
2022-02-08
我有两个矩阵,A为2*3,B为3*2,想要在R语言中通过loops函数计算A*B的结果应该如何写程序呢?希望得到各位大神的帮助
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2022-2-8 12:27:30
照着乘法的定义做就可以了。比如
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-2-9 23:08:04
owenqi 发表于 2022-2-8 12:27
照着乘法的定义做就可以了。比如
谢谢!我按照您的方法试了一下,显示Error in A[i, ] : incorrect number of dimensions,想请教一下这是哪一步出了问题呢?
A <- matrix(data=1,6,4,2,5,7, nrow = 2, ncol = 3, byrow = FALSE, dimnames = NULL)
A
B <- matrix(data=4,11,13,6,8,3, nrow = 3, ncol = 2, nrow = 3, ncol = 2, byrow = FALSE, dimnames = NULL)
B

m <- nrow(A)
n <- ncol(B)

M <- matrix(NA, nrow = m, ncol =n )

for(i in 1:m)
  for(j in 1:n)
    M[i,j] <- sum(A[i,]*B[,j])

M
A %*% B
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-2-11 07:09:49
yanglyqx 发表于 2022-2-9 23:08
谢谢!我按照您的方法试了一下,显示Error in A : incorrect number of dimensions,想请教一下这是哪一步 ...
复制代码
应该是
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-2-13 20:22:03
owenqi 发表于 2022-2-11 07:09
应该是
解决了!非常感谢您!&#128591;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-3-2 14:13:08
为什么会有人想到要在R这种高级语言中来用loop来求矩阵乘法

但凡任课老师有点责任心都不应布置这种作业吧

连FORTRAN这种古老的语言,也是直接函数(运算符)搞定了。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群