巧用布尔值方法对numpy矩阵进行条件筛选

今天看到一段代码,基于此前的经验来理解,没法看懂,:

sp = p[labels == label, :] # labels是一个list, label 为循环变量

可能是还没从C++这些语言跳出来,看到这代码就觉得特别扭,毕竟都不是一个类型,所以一致没法理解这行代码,直到我用print()打出来:
巧用布尔值方法对numpy矩阵进行条件筛选
因此,labels == label即为一个真值表,然后基于这个真值表,选出p[]里的所有符合条件的项(labels和p是一一对应的,labels即为p所有项的标签)
简而言之,就是把p里对应True的项全都选了出来形成一个numpy的矩阵(这里是二维的)

上一篇:读取csv中某列转为数字,顺序不变


下一篇:多标签分类算法详解及实践(Keras)