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
(len(Y), 3)
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)