【Numpy学习】np.count_nonzero()用法解析
发布日期:2021-05-08 05:16:27 浏览次数:8 分类:原创文章

本文共 902 字,大约阅读时间需要 3 分钟。

  前言
  在机器学习或者深度学习中经常需要统计矩阵(也可看做多维数组)中行列不为0元素的个数,这时就需要用到numpy中的np.count_nonzero()函数。
  作用
  np.count_nonzero()是用于统计矩阵中非零元素的个数
  用法
   np.count_nonzero(a, axis=None, *, keepdims=False),参数a: 为需要统计数组名;axis: 为统计的轴,当axis=0时统计数组y轴(每列)非零元素个数,当axis=1时统计数组每x轴(每行) 非零元素个数, 另外,axis可以为元组。为元组时统计的是多维矩阵的行列。keepdims用法暂时不清楚。
  案例

a = np.array([[0, 1, 7, 0],              [3, 0, 2, 19]])np.count_nonzero(a)5np.count_nonzero(a, axis=0)array([1, 1, 2, 1])np.count_nonzero(a, axis=1)array([2, 3])----------------------------d = np.array([[[1,2,1],[0,1,2],[0,2,3],[0,2,3]],[[1,2,1],[0,1,2],[0,2,3],[0,2,3]]])print(d)'''[[[1 2 1]  [0 1 2]  [0 2 3]  [0 2 3]] [[1 2 1]  [0 1 2]  [0 2 3]  [0 2 3]]]'''print(np.count_nonzero(d,axis=0)) '''[[2 2 2] [0 2 2] [0 2 2] [0 2 2]]'''print(np.count_nonzero(d,axis=1))'''[[1 4 4] [1 4 4]]'''print(np.count_nonzero(d,axis=(0,1))) #[2 8 8]print(np.count_nonzero(d,axis=(0,1,2))) #18

  参考文献

上一篇:【Python基础】Python中len()的用法——求矩阵对象的长度
下一篇:SVT矩阵补全算法的实现及应用

发表评论

最新留言

很好
[***.229.124.182]2025年04月12日 08时33分58秒