将所有矢量项乘以另一个矢量的单项

时间:2014-04-10 03:26:42

标签: r vector

问题很简单。如何将向量A的每个元素乘以向量B的单个元素。

以下是示例:

> a
[1] 5 5 5 5 5 5 5 5

> b
[1] 250  252  252

最终结果应返回一个类似于:

的对象
1   1250 1250 1250 1250 1250 1250 1250 1250
2   1260 1260 1260 1260 1260 1260 1260 1260
3   1260 1260 1260 1260 1260 1260 1260 1260

我花了一些时间尝试按功能for执行此操作,但我无法获得正确的结果。

如何实现这一点的一些例子将是完美答案。

感谢。

1 个答案:

答案 0 :(得分:3)

尝试使用tcrossprod

> tcrossprod(b,a)
     [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
[1,] 1250 1250 1250 1250 1250 1250 1250 1250
[2,] 1260 1260 1260 1260 1260 1260 1260 1260
[3,] 1260 1260 1260 1260 1260 1260 1260 1260

您也可以使用%*%,如:b %*% t(a)