将向量中的每个元素乘以自身,创建一个矩阵。

6

我将尝试将向量中的每个元素相乘,使其产生一个关于对角线对称的矩阵。例如,给定这个向量:

x <- 1:3

我希望创建这个:
1 2 3  
2 4 6 
3 6 9  

i.e:

x[1]*x[1] x[2]*x[1] x[3]*x[1]  
x[1]*x[2] x[2]*x[2] x[3]*x[2] 
x[1]*x[3] x[2]*x[3] x[3]*x[3] 

任何帮助都将不胜感激。谢谢。
1个回答

10

像这样:

x %o% x

这是一个缩写,代表

outer(x, x)

你也可以这样做

 tcrossprod(x)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接