# in each case returns array of bool
np.isnan(a).any(axis=1) # rows where any value is nan
np.isnan(a).all(axis=1) # rows where all values are nan
# in each case returns array of bool
np.isnan(a).any(axis=0) # columns where any value is nan
np.isnan(a).all(axis=0) # columns where all values are nan