在Matlab中为python中的矩阵(m,n)等效矩阵(:),冒号

时间:2018-04-19 19:09:41

标签: python matlab colon

我需要在python中找到来自A(:)的matlab的等价物。其中A是矩阵(m,n):

例如:

A =

 5     6     7
 8     9    10
  
    

A(:)

  

ans =

 5
 8
 6
 9
 7
10

提前感谢!

2 个答案:

答案 0 :(得分:2)

您可以使用numpy.reshape

重塑数组来完成此操作

https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.reshape.html

import numpy
m = numpy.array([[ 5, 6, 7 ], [ 8, 9, 10 ]])
print(numpy.reshape(m, -1, 'F'))

答案 1 :(得分:2)

如果您想要列主要结果(以匹配Matlab约定),您可能希望使用numpy矩阵的转置,然后使用ndarray.ravel()方法:

m = numpy.array([[ 5, 6, 7 ], [ 8, 9, 10 ]])
m.T.ravel()

给出:

array([ 5,  8,  6,  9,  7, 10])