I'm trying to multiply each element in a vector by itself such that it produces a matrix that is symmetric about the diagonal. For example, given this vector::
x <- 1:3
I would like to create this:
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]
Any help would be greatly appreciated. Thanks.
Like this:
which is a shortcut for
You can also do