numpy库详解

做数据分析,我们难免会使用到Numpy对数据做处理。所以我们很有必要对他有所了解。这里配图详细介绍该库的具体用法。

在开始之前,我们需要导入所需包

import numpy as np

1.一维数组

创建数组

np.array([1, 2, 3])

image.png

初始化数组

在对数组初始化时,Numpy提供了几种初始化方法,

ones(): 初始元素为1的数组
zeros():初始元素为0的数组
random.random():初始元素为随机数的数组

大家看图就更加的详细。

image.png

数组运算

在开始对数组运算之前,我们需要创建两个示例数组。


image.png

下面开始对数组做运算

# 按位置对元素做相加
data + one
[2, 3]
image.png

除了加法外,数组与数组之间,我们还可以做其他运算。加减乘除。

image.png

不仅如此,在对数组和某个值做运算时,也是可以的.


image.png

数组索引

我们可以像对list()列表切片那样处理Numpy数组。具体请看下图。


image.png

很强大有木有!!!为了做更好对比,可以看下列表的切片。

data = [1, 2, 3]
data[0]# 输出1
data[1] # 输出2 
data[0,2] # 输出[1, 2]
data[1:] # 输出[2, 3]

数组聚合
这里就简单介绍了max(), min(), sum(),当然了还有其他的聚合方法,如平均,方差等等。

image.png

2.二维数组(矩阵)

像一维简单数组那样,我们还是先学会创建简单二维数组。

创建矩阵

np.array([[1,2],[3,4]])

image.png

初始化矩阵
同理,我们

ones(): 初始元素为1的数组
zeros():初始元素为0的数组
random.random():初始元素为随机数的数组

同样也是适用于矩阵。


image.png

配上图解,增加可读性。
矩阵运算

同样也是支持简单的四则运算,这里就以加法为例。其他运算也是同理,按位置做运算。


image.png

当不同维度数组运算时,


image.png

点积运算。


image.png

当我们需要做点积运算时,总会有很多迷茫之处,不要紧这里给更加详细的图解。

image.png

矩阵索引

大家可以验证一下。

# 创建一个三行二列矩阵
np.array([[1,2],[3,4],[5,6]])

image.png

矩阵聚合
基本与一维数组算法是一致的。
我们还可以通过参数axis实现按行或列聚合。axis=0:按行,axis=1:按列。
image.png

以上图为例,axis=0按行取max,获取每行的最大值,每行有两个参数。axis=1按列取max,获取每列的最大值,每列有三个参数。

反转矩阵

image.png

矩阵重构
image.png

通过reshape()函数,我们可以塑造出我们所需的数组维度。

3.最后

也适用于多维度数组与数学公式的运用。


image.png

image.png

数学运用:采用Numpy计算均方误差(MSE)

image.png

image.png

image.png

image.png

image.png

image.png

更多请参考原文

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容