不太能理解这个语法语法

这个代码怎么理解啊?求和的函数在这是什么意思,能解释一下吗?

img

分成三步:
第一步:np.isnan(Z) 把缺失值的元素用True表示,其他元素用False表示,返回和Z形状一样的一个新的array
第二步:np.sum(np.isnan(Z),axis=1) 利用布尔变量的整数属性,True=1, False=0,把这个返回的array每行相加,得到每行的缺失值个数,0表示这一行没有缺失值
第三步:Z[np.sum(np.isnan(Z),axis=1)==0] 找出没有缺失值的行,返回一个新的array

计算 np.nan 的个数,再作数组的下标组成新二维数组

>>> Z = np.array([[1,np.nan,2],[4,5,6],[7,8,9]])
>>> Z
array([[ 1., nan,  2.],
       [ 4.,  5.,  6.],
       [ 7.,  8.,  9.]])
>>> Z[np.array([0,1,2])]
array([[ 1., nan,  2.],
       [ 4.,  5.,  6.],
       [ 7.,  8.,  9.]])
>>> Z[np.array([1,1,1])]
array([[4., 5., 6.],
       [4., 5., 6.],
       [4., 5., 6.]])
>>> Z[np.array([0,1,0])]
array([[ 1., nan,  2.],
       [ 4.,  5.,  6.],
       [ 1., nan,  2.]])
>>> np.sum(np.isnan(Z),axis=1)
array([1, 0, 0])
>>> Z[np.sum(np.isnan(Z),axis=1)]
array([[ 4.,  5.,  6.],
       [ 1., nan,  2.],
       [ 1., nan,  2.]])

可以查看手册:python- 类定义语法 中的内容