Python社区  »  Python

Python 进阶视频课 - 2. NumPy 下

王的机器 • 1 周前 • 9 次点击  

这是 Python 进阶课的第二节 - NumPy 下,进阶课的目录如下:


  1. NumPy 上


之前基础版的 11 节的目录如下:


  1. 编程概览

  2. 元素型数据

  3. 容器型数据

  4. 流程控制:条件-循环-异常处理

  5. 函数上:低阶函数

  6. 函数下:高阶函数

  7. 类和对象:封装-继承-多态-组合

  8. 字符串专场:格式化和正则化

  9. 解析表达式:简约也简单

  10. 生成器和迭代器:简约不简单

  11. 装饰器:高端不简单


本节主要讲数组的变形和计算,其中最精彩的部分当属广播机制规则


当对两个形状不同的数组按元素操作时,可能会触发广播机制 (broadcast)。具体做法,先适当复制元素使得这两个数组形状相同后再按元素操作,两个步骤:


  1. 确定广播轴:比对两个数组的维度,将形状小的数组的维度 (轴) 补齐

  2. 复制元素:顺着补齐的轴,将形状小的数组里的元素复制,最终和形状大的数组的形状一致


对两个数组操作时,如果它们的形状

 

  • 不相容 (incompatible),则不能进行广播机制

  • 相容 (compatible),则可以进行广播机制

 

进行广播机制分两步:

 

1.    检查两个数组形状兼容性。即从数组的形状的最后一个元素开始检查(如果数组在某个维度上缺失,用 1 补齐)

 

    a.    它们是否相等 (相等条件)

    b.    是否有一个等于 1 (有一条件)

 

2.    一旦它们形状兼容,确定两个数组的最终一致的形状,其形状在每个维度上的值等于“两个数组的形状在每个维度上的值的最大值”。



这次内容多到爆炸,两个视频加起来 190 分钟。



付费用户(付 1 赠 1)可以获得:


  • 观看课程视频 (130 分钟)

  • Python 代码 (Jupyter Notebook)


讲完 NumPy 上下两部总共用了 230 分钟,接近 4 个小时!听完肯定有所所获。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/99092
 
9 次点击  
分享到微博