在 Matlab 中,对于 matrix(m,n) 等效的 matrix(:) ,冒号,在 python
In Matlab for a matrix(m,n) equivalent matrix(:) , colon, in python
我需要从 python 中的 A(:) 的 matlab 中找到等价物。其中 A 是矩阵 (m,n):
例如:
A =
5 6 7
8 9 10
A(:)
答案=
5
8
6
9
7
10
提前致谢!
您可以通过使用 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'))
如果您想要列优先结果(以匹配 Matlab 约定),您可能想要使用 numpy
矩阵的转置,然后使用 ndarray.ravel()
方法:
m = numpy.array([[ 5, 6, 7 ], [ 8, 9, 10 ]])
m.T.ravel()
给出:
array([ 5, 8, 6, 9, 7, 10])
我需要从 python 中的 A(:) 的 matlab 中找到等价物。其中 A 是矩阵 (m,n):
例如:
A =
5 6 7
8 9 10
A(:)
答案=
5
8
6
9
7
10
提前致谢!
您可以通过使用 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'))
如果您想要列优先结果(以匹配 Matlab 约定),您可能想要使用 numpy
矩阵的转置,然后使用 ndarray.ravel()
方法:
m = numpy.array([[ 5, 6, 7 ], [ 8, 9, 10 ]])
m.T.ravel()
给出:
array([ 5, 8, 6, 9, 7, 10])