Construct two dimensional numpy array from indices and values of a one dimensional array

前端 未结 3 529
南旧
南旧 2020-12-11 17:17

Say I\'ve got

Y = np.array([2, 0, 1, 1])

From this I want to obtain a matrix X with shape (len(Y), 3). In this particular cas

3条回答
  •  天命终不由人
    2020-12-11 17:50

    To give a one-liner alternative to DSM's perfectly good answer:

    >>> Y = np.array([2, 0, 1, 1])
    >>> np.arange(3) == Y[:, np.newaxis]
    array([[False, False,  True],
           [ True, False, False],
           [False,  True, False],
           [False,  True, False]], dtype=bool)
    

提交回复
热议问题