如何计算Mathematica中由向量形成的矩阵

时间:2012-02-04 07:18:14

标签: wolfram-mathematica

我需要获得由列向量vvT形成的矩阵v。即列向量v矩阵乘以其转置。

我发现Mathematica不支持列向量。请帮忙。

1 个答案:

答案 0 :(得分:7)

这样做你想要的吗?

v = List /@ Range@5;
vT = Transpose[v];
vvT = v.vT;

v // MatrixForm
vT // MatrixForm
vvT // MatrixForm

Mathematica graphics

要将{1, 2, 3, 4, 5}转换为{{1}, {2}, {3}, {4}, {5}},您可以使用以下任意内容:

List /@ {1, 2, 3, 4, 5}

{ {1, 2, 3, 4, 5} }\[Transpose]

Partition[{1, 2, 3, 4, 5}, 1]

您可能会发现其中一个比其他更方便。通常在长列表中,您会发现Partition是最快的。

此外,您的具体操作可以通过不同方式完成:

x = {1, 2, 3, 4, 5};

Outer[Times, x, x]

语法上最短:

{Range@5}; %[Transpose].%