NumPy基础:数组和矢量计算(二)

上一篇:NumPy基础:数组和矢量计算(一)

Numpy数组的基本运算

数组不用编写循环即可对数据执行批量运算,称为矢量化。

大小相等的数组之间的任何算术运算都可以对元素进行应用

NumPy基础:数组和矢量计算(二)

数组与标量的算术运算会将标量值传到各元素

NumPy基础:数组和矢量计算(二)

大小相同的数组之间的比较会生成布尔值数组

NumPy基础:数组和矢量计算(二)

不同大小的数组之间的运算叫广播。广播先挖个坑

索引和切片

一维数组的索引和切片跟Python中的列表差不多

NumPy基础:数组和矢量计算(二)
标量值赋值给一个切片时,该值会自动传播(广播的内容)到整个区间。

=====================================

与列表的区别,数组切片是原始数据的视图。数据不会被复制,视图上的任何修改都会直接反映到源数组上。
NumPy基础:数组和矢量计算(二)
若想要得到ndarray切片的副本而不是视图,就需要进行复制操作(array4[6:9].copy())(后面会使用到)

=====================================

在高维度数组还有更多的操作空间!
在二维数组中,各索引位置上的元素不再是标量而是一维数组

NumPy基础:数组和矢量计算(二)

在多维数组,省略后面的索引,返回对象是一个维度低一点的ndarray
标量值和数组均可赋值给切片NumPy基础:数组和矢量计算(二)
多维数组也可以访问索引
NumPy基础:数组和矢量计算(二)
++++++++++++++++++++++++++++++++++++
下一篇:NumPy基础:数组和矢量计算(三)