如何将矩阵转换为向量矢量?

Ran*_*Bob 3 julia

我有以下矩阵A = [1.00 2.00; 3.00 4.00],我需要将其转换为Vector的向量,如下所示:

A1 = [1.00; 3.00] A2 = [2.00; 4.00]

有任何想法吗?

Tas*_*nou 7

tl; dr
这可以通过列表理解非常优雅地创建:

A = [A[:,i] for i in 1:size(A,2)]
Run Code Online (Sandbox Code Playgroud)


说明:

这实际上是A从索引的东西转换为索引的A[1,2]东西A[2][1],这就是你所要求的.

在这里,我将直接分配回来A,在我看来你的想法.但是,只有在代码明确无误时才这样做!在代码中的不同点上使用同名变量代表不同的东西通常不是一个好主意.

注意:如果索引中行/列顺序的反转不是您想到的顺序,并且您希望A[1,2]将其编入索引A[1][2],则执行"每行"列表推导,即

A = [A[i,:] for i in 1:size(A,1)]
Run Code Online (Sandbox Code Playgroud)