Numpy详解,带你一步步了解Numpy(三)

目录

二、主要内容

22、比较,遮罩和布尔逻辑

 23、使用布尔数组

 24、布尔数组作为遮罩

 25、花式索引

 26、组合索引

 27、使用花式索引修改值

 28、快速排序:np.sort()和np.argsort()

 29、按行或列排序

 30、分区排序


二、主要内容

22、比较,遮罩和布尔逻辑

考虑下面的场景,假设我们有2014年西雅图市的日降水量,

这个直方图让我们大致了解了数据的样子,但我们想要回答一些深入的问题,例如:

一年中有多少雨天?

那些雨天的平均降水量是多少?

降雨量超过半英寸的天数有多少?

 Numpy还将比较操作符实现为元素级的ufuncs。

 

 

 23、使用布尔数组

在Python中,True和False分别被解释为1和0。

 当我们想要检查所有值是否为真时,可以使用np.any()或np.all()。

 Numpy将Python的按位逻辑操作符&、|、^和~重载为对布尔数组进行元素级处理的虚函数。

例如: 

 

 24、布尔数组作为遮罩

更强大的模式是使用布尔数组作为掩码,以选择数据本身的特定子集。

屏蔽操作返回一个一维数组,其中填充了掩码数组为True的所有位置的值。

 回到我们降雨量的问题,通过组合布尔运算、屏蔽运算和聚合,我们可以非常快速地回答西雅图雨水数据的一些统计问题。

 25、花式索引

通过传递索引数组来代替单个标量,允许我们非常快速地访问和修改数组值的复杂子集。

结果的形状反映索引数组的形状,而不是被索引的数组的形状。

 26、组合索引

 

 27、使用花式索引修改值

 

 

 28、快速排序:np.sort()和np.argsort()

默认情况下,np.sort()使用O[NlogN],这是一种快速排序算法,不过也可以使用合并排序和堆排序。

对于大多数应用程序,默认的快速排序已经足够了。

 

 29、按行或列排序

 30、分区排序

有时我们对整个数组的排序不感兴趣,而只是想找到数组中最小的k个值

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值