【发布时间】:2022-01-26 22:17:05
【问题描述】:
我有一个 numpy 数组
我怎样才能找到它们中的哪些相同以及在矩阵中出现了多少次? 谢谢 虚拟示例:
A=np.array([[0, 1, 0, 1],[0, 0, 0, 0],[0, 1, 1, 1],[0, 0, 0, 0]])
【问题讨论】:
-
到目前为止你尝试了什么?
我有一个 numpy 数组
我怎样才能找到它们中的哪些相同以及在矩阵中出现了多少次? 谢谢 虚拟示例:
A=np.array([[0, 1, 0, 1],[0, 0, 0, 0],[0, 1, 1, 1],[0, 0, 0, 0]])
【问题讨论】:
您可以将numpy.unique 与axis=0 和return_counts=True 一起使用:
np.unique(A, axis=0, return_counts=True)
输出:
(array([[0, 0, 0, 0],
[0, 1, 0, 1],
[0, 1, 1, 1]]),
array([2, 1, 1]))
【讨论】:
pandas.DataFrame.value_counts 可以更快,因为它避免了对行进行排序。