Python row major to column major order vector

后端 未结 4 1126
情歌与酒
情歌与酒 2020-12-10 20:02

Having a matrix like

ma = [[0.343, 0.351, 0.306], [0.145, 0.368, 0.487]]

I want to get a vector like:

[0.343, 0.145, 0.351,         


        
4条回答
  •  旧巷少年郎
    2020-12-10 20:58

    You can use ravel() to flatten the array.

    >>> a.T.ravel()
    array([ 0.343,  0.145,  0.351,  0.368,  0.306,  0.487])
    
    # Or specify Fortran order.
    >>> a.ravel('F')
    array([ 0.343,  0.145,  0.351,  0.368,  0.306,  0.487])
    
    a = np.random.rand(4,2)
    >>> a
    array([[ 0.59507926,  0.25011282],
           [ 0.68171766,  0.41653172],
           [ 0.83888691,  0.22479481],
           [ 0.04540208,  0.23490886]])
    
    >>> a.T.ravel()  # or a.ravel('F')
    array([ 0.59507926,  0.68171766,  0.83888691,  0.04540208,  0.25011282,
            0.41653172,  0.22479481,  0.23490886])
    

提交回复
热议问题