【问题标题】:What does %*% mean in R [duplicate]%*%在R中是什么意思[重复]
【发布时间】:2014-05-16 21:39:47
【问题描述】:

我正在关注一些code,我可以应用所有内容,直到获得命令:

s1 %*% cc1$xcoef

这条线对我不起作用,我找不到解释其用途的文档。我收到此错误:

Error in s1 %*% cc1$xcoef : non-conformable arguments

%*% 有什么作用,我可以使用其他功能吗?

我正在使用 R 版本 3.0.3 (2014-03-06)“温暖的小狗”

【问题讨论】:

  • 查看?"%*%" 阅读帮助文件。
  • 谢谢 我在使用时忘记了引号?

标签: r


【解决方案1】:

使用?'%*%' 获取文档。

%*% 是矩阵乘法。对于矩阵乘法,您需要一个m x n 矩阵乘以一个n x p 矩阵。

【讨论】:

  • 你的回答告诉我,我可以在 ? 之后使用引号来查找 R 中其他算术运算符的文档,例如 `?"%%"。
【解决方案2】:

矩阵乘法,见下例:

> A <- matrix (c(1,3,4, 5,8,9, 1,3,3), 3,3)
> A
     [,1] [,2] [,3]
[1,]    1    5    1
[2,]    3    8    3
[3,]    4    9    3
> 
> B <- matrix (c(2,4,5, 8,9,2, 3,4,5), 3,3)
> 
> B
     [,1] [,2] [,3]
[1,]    2    8    3
[2,]    4    9    4
[3,]    5    2    5
> 
> 
> A %*% B
     [,1] [,2] [,3]
[1,]   27   55   28
[2,]   53  102   56
[3,]   59  119   63

> B %*% A
     [,1] [,2] [,3]
[1,]   38  101   35
[2,]   47  128   43
[3,]   31   86   26

另见:

http://en.wikipedia.org/wiki/Matrix_multiplication

如果这不遵循矩阵的大小规则,你会得到错误:

> A <- matrix(c(1,2,3,4,5,6), 3,2)
    > A
     [,1] [,2]
[1,]    1    4
[2,]    2    5
[3,]    3    6

> B <- matrix (c(3,1,3,4,4,4,4,4,3), 3,3)

> B
         [,1] [,2] [,3]
    [1,]    3    4    4
    [2,]    1    4    4
    [3,]    3    4    3
    > A%*%B
    Error in A %*% B : non-conformable arguments

【讨论】:

    猜你喜欢
    • 2014-08-23
    • 2020-04-01
    • 2023-04-10
    • 2020-04-22
    • 1970-01-01
    • 2013-11-02
    • 2020-10-27
    • 2015-07-15
    • 2018-07-17
    相关资源
    最近更新 更多