为了账号安全,请及时绑定邮箱和手机立即绑定

如何计算二维数组(Python)中一维数组的数量?

如何计算二维数组(Python)中一维数组的数量?

不负相思意 2021-08-11 21:51:39
如果我有一个 numpy 二维数组,请说:a = [[1, 2, 3], [2, 3, 4], [3, 4, 5], [1, 2, 3]]如何计算 a 中 [1, 2, 3] 的实例数?(在这种情况下,我正在寻找的答案是 2)
查看完整描述

2 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

如果您想要所有数组的计数,您可以使用unique:


import numpy as np


a = np.array([[1, 2, 3], [2, 3, 4], [3, 4, 5], [1, 2, 3]])

uniques, counts = np.unique(a, return_counts=True, axis=0)

print([(unique, count) for unique, count in zip(uniques, counts)])

输出


[(array([1, 2, 3]), 2), (array([2, 3, 4]), 1), (array([3, 4, 5]), 1)]


查看完整回答
反对 回复 2021-08-11
?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

既然你说它是一个numpy数组,而不是一个列表,你可以这样做:


>>> a = np.array([[1, 2, 3], [2, 3, 4], [3, 4, 5], [1, 2, 3]])

>>> sum((a == [1,2,3]).all(1))

2

(a == [1,2,3]).all(1)给你一个布尔数组或行中所有值都匹配的地方[1,2,3]: array([ True, False, False,  True], dtype=bool),它的总和是True那里所有值的计数


查看完整回答
反对 回复 2021-08-11
  • 2 回答
  • 0 关注
  • 814 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信