nonzero函数返回非零元素的目录。
返回值为元组, 两个值分别为两个维度, 包含了相应维度上非零元素的目录值。
import numpy as np A = np.mat([[0,1,2,3,4,3,2,1,0],[0,1,2,3,4,5,6,7,0]]) x = A.nonzero() #取出矩阵中的非零元素的坐标 print x #输出是一个元组,两个维度。一一对应, #返回非零元素在矩阵中的位置,前一个列表存放非零行坐标,后一个列表存放非零元素列坐标 #(array([0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1]), array([1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7])) #放下来一一对应,即 #(array([0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1]), #array([1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7])) # (0,1) (0,2).............................. (1,6) (1,7) 坐标上的元素都是非0的 print A[x],' ' #取出矩阵中的非零元素 #[[1 2 3 4 3 2 1 1 2 3 4 5 6 7]] B = np.mat([[1,1,0,1,0,1,0,0,1],[0,1,1,0,0,0,1,1,1]]) print np.nonzero(B) # 与B.nonzero()等价
相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
推荐阅读:
python怎么逐行读写txt文件
Python怎么实现HMacMD5加密算法