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

如何计算矩阵列表中矩阵的出现次数?

如何计算矩阵列表中矩阵的出现次数?

呼如林 2023-03-16 10:52:22
我有一个矩阵列表,例如一个 numpy 数组列表:list = [np.array([[0,1],[1,1]]),         np.array([[1,0],[0,0]]),         np.array([[0,1],[1,1]])]我想计算每个矩阵的出现次数。因此,理想的输出类似于:np.array([[0,1],[1,1]]): 2 np.array([[1,0],[0,0]]): 1我可以想象使用 numpy 或 pandas 可以实现这一点。由于我需要使用矩阵进行算术运算,因此我正在寻找一种避免展平矩阵的解决方案。我知道 np.unique 能够计算列表中平面数组的出现次数。
查看完整描述

1 回答

?
Qyouu

TA贡献1786条经验 获得超11个赞

你可以做:


pd.Series(my_list).astype(str).value_counts()

[[0 1]\n [1 1]]    2

[[1 0]\n [0 0]]    1

dtype: int64

或者:


from collections import defaultdict

d = defaultdict(int)


for arr in my_list:

    d[str(arr)] += 1

    

d = dict(d)

print(d)



{'[[0 1]\n [1 1]]': 2, '[[1 0]\n [0 0]]': 1}


查看完整回答
反对 回复 2023-03-16
  • 1 回答
  • 0 关注
  • 98 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号