Goe*_*237 3 python arrays numpy multidimensional-array
我正在尝试找到一种方法,通过仅采用第一列中唯一的元素来从多维数组创建新数组,例如,如果我有一个数组
[[1,2,3],
[1,2,3],
[5,2,3]]
Run Code Online (Sandbox Code Playgroud)
操作后我想得到这个输出
[[1,2,3],
[5,2,3]]
Run Code Online (Sandbox Code Playgroud)
显然,第二列和第三列不需要是唯一的。
谢谢
由于您希望保留第一列的第一行唯一性,因此您可以使用np.unique
其可选return_index
参数,该参数将为您提供元素唯一性中第一个出现的索引(从而满足第一行条件)A[:,0]
,其中A
是输入数组。因此,我们将有一个矢量化解决方案,如下所示 -
_,idx = np.unique(A[:,0],return_index=True)
out = A[idx]
Run Code Online (Sandbox Code Playgroud)
样本运行 -
In [16]: A
Out[16]:
array([[1, 2, 3],
[5, 2, 3],
[1, 4, 3]])
In [17]: _,idx = np.unique(A[:,0],return_index=True)
...: out = A[idx]
...:
In [18]: out
Out[18]:
array([[1, 2, 3],
[5, 2, 3]])
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1287 次 |
最近记录: |