python中numpy数组的布尔运算


>>> x[x>0.5] #将它当做索引传回原数组,只获取那些>0.5的
array([ 0.5993579 ,  0.68693925,  0.74380945,  0.72345401,  0.64499497,
        0.80924589])
>>> np.all(x<1) #测试x<1所返回的数组(传给all)中所有元素是否都等价True
True
>>> a=np.array([1,2,3])
>>> b=np.array([3,2,1])
>>> a>b #对应位置作比较
array([False, False,  True], dtype=bool)
>>> a[a==b] #获取一样的
array([2])
>>> np.any([1,2,3,4]) #如果传入的数组中有至少一个元素等价True都返回True
True

参考以上文献【Python学习笔记】19:numpy数组布尔运算和切片_LauZyHou的博客-CSDN博客

根据测试得出,对于X[判断语句],将判断语句的输出的true or false做为索引返回数组切片,numpy具有泛化能力

注意数组和列表区别,列表打印后输出有逗号如[1,2,3],数组没有如[1 2 3]

import numpy as np
y=(1, 1, 1, 1)
x=(2,3,4,5)
x=np.array(x)
y=np.array(y)
print(y)
print(y==1)#数组泛化
print(x[y==1])

输出结果如下:

[1 1 1 1]
[ True  True  True  True]
[2 3 4 5]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李湘儒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值