假设我们有一个矩阵X和一个目标列y如下:
import numpy as np
X = np.ones([10,2])
for i in range(0,X.shape[0]):
X[i][0] = i
y = [0,1,2,1,0,0,1,2,3,3]
我希望根据y的值获取X行。从上面的小例子:
对于y == 0,我希望得到X行:
[[0 1]
[4 1]
[5 1]]
对于y == 3,我希望得到X行:
[[8 1]
[9 1]]
等等。 我该如何解决这个问题?
我也试过
print(X[y == 0][:])
但它不起作用。
答案 0 :(得分:0)
您必须将普通python array
转换为numpy.ndarray
,如下所示
Y=np.array(y)
print(X[Y == 0][:])
你会得到:
[[ 0. 1.]
[ 4. 1.]
[ 5. 1.]]