2024-04-20 06:36:17 发布
网友
我试图找到一种方法,如何从多维数组中创建一个新数组,方法是只获取第一列中唯一的元素,例如,如果我有一个数组
[[1,2,3], [1,2,3], [5,2,3]]
手术后我想得到这个输出
显然,第二列和第三列不需要是唯一的。在
谢谢
main = [[1, 2, 3], [1, 3, 4], [2, 4, 5], [3, 6, 5]] used = [] new = [[sub, used.append(sub[0])][0] for sub in main if sub[0] not in used] print(new) # Output: [[1, 2, 3], [2, 3, 4], [3, 6, 5]]
由于您希望保持第一列的第一行唯一性,所以您只需将^{}与其可选的return_index参数一起使用,该参数将为您提供A[:,0]元素唯一性中第一个出现的索引(从而满足第一行条件),其中A是输入数组。因此,我们将有一个向量化的解决方案,如-
return_index
A[:,0]
A
_,idx = np.unique(A[:,0],return_index=True) out = A[idx]
样本运行-
由于您希望保持第一列的第一行唯一性,所以您只需将^{} 与其可选的
return_index
参数一起使用,该参数将为您提供A[:,0]
元素唯一性中第一个出现的索引(从而满足第一行条件),其中A
是输入数组。因此,我们将有一个向量化的解决方案,如-样本运行-
^{pr2}$相关问题 更多 >
编程相关推荐