我有一个(n x k)维矩阵X和一个(n x 1)维矩阵Y.我的问题是使用NumPy如何根据Y矩阵中相同索引上的元素拆分矩阵X.其中的示例数据可以是:
X , Y
[ 1.4 0.2], ['class_A']
[ 1.3 0.2], ['class_B']
[ 1.5 0.2], ['class_C']
[ 1.4 0.2], ['class_a']
[ 1.7 0.4], ['class_A']
[ 1.4 0.3], ['class_B']
[ 1.5 0.2], ['class_C']
.........
我已经尝试使用简单的python,但我想通过NumPy来做,但我没有找到任何功能。
答案 0 :(得分:1)
如果我理解你的问题,你可以索引一个布尔数组,例如:
In [8]: import numpy as np
In [9]: X = np.arange(16).reshape(8, 2)
In [10]: Y = np.array([0,0,1,1,2,2,2,1])
In [11]: X[Y == 1]
Out[11]:
array([[ 4, 5],
[ 6, 7],
[14, 15]]