《利用Python》进行数据分析:Numpy基础7 布尔型索引

#coding=utf-8
__author__ = 'andy'

import numpy as np
names=np.array(['Bob','Joe','Will','Bob','Will','Joe','Joe'])
print(names)
#使用numpy.random中的randn函数生成一些正态分布的随机数据
data=np.random.randn(7,4)
print(data)

#假设names每个名字对应data数组中的一行,而我们想选出对于名字'Bob'的所有行
#先对names和字符串'Bob'的比较运算,得出一个布尔值数组
print(names=='Bob')
#这个布尔型数组可用于数组索引
print(data[names=='Bob'])

print(data[names=='Bob',2:])#切片、整数混合使用
print(data[names=='Bob',3])#切片、整数混合使用

'''不等于'''
#不等于符号 != ,也可以用负号-
print(names!='Bob')
print(data[names!='Bob'])

#&(和)、(或)之类的布尔算术运算
mask=(names=='Bob')|(names=='Will')
print(mask)
print(data[mask])

#将所有负值设置为0
data[data<0]=0
print(data)

#通过布尔数组设置整行或整列的值
data[names!="Joe"]=7
print(data)
原文地址:https://www.cnblogs.com/wede375/p/10445479.html