Numpy库基础方法汇总
此文章汇总一些我在DL学习中用到过的np库方法,作为笔记留存,后续遇到其他新东西再添,欢迎一起探讨学习!
import numpy as np
矩阵基础
numpy主要数组对象ndarray
ndarray是numpy库的主要对象,如果你生成了一个矩阵,然后调用type()方法去查看它的类型的话,它就会返回ndarray对象:
a = np.array([[1,2,3,4,5], [6,7,8,9,10]])
print(type(a))
# <class 'numpy.ndarray'>
数组的创建
理论上你可以用np.array()
方法生成任意维数的数组,不过在实际操作中我们不可能用到太高维度的矩阵,我本人最高也就用到过5维矩阵。
创建一个空数组:
x = np.empty(shape = [2,5], dtype = int)
print (x)
# [[2128575739 1309500030 1661424176 1988385690 1324770695]
# [ 12290 0 0 0 0]]
注: 值是随机的,因为没有初始化。
参数:
参数名 | 描述 |
---|---|
shape | 矩阵尺寸 |
dtype | 元素数据类型 |
order | 有"C"和"F"两个选项,分别代表,行优先和列优先,在计算机内存中的存储元素的顺序。(很少用到) |
全0数组:
x = np.zeros(shape = [2,5], dtype = int)
print (x)
# [[0 0 0 0 0]
# [0 0 0 0 0]]
全1数组
x = np.ones(shape = [2,5], dtype = int)
print (x)
# [[1 1 1 1 1]
# [1 1 1 1 1]]
随机矩阵
这里只列举一个简单的方法,后面会有更多其他关于随机矩阵的东西
[0,1) 之间,平均分布
x = np.random.rand(2,5)
print (x)
# [[0.67571794 0.95051445 0.77698268 0.28708719 0.96148028]
# [0.35231135 0.60493328 0.99423589 0.22146058 0.54518968]]
更多其他矩阵生成方法
方法名 | 含义 |
---|---|
arange(n) | 返回ndarray类型,元素从0到n-1 |
full(shape,value) | 根据shape生成一个数组,每元素值全为value |
eye(n) | 一个正方形的n*n单位矩阵,对角线为1,其余为0 |
ones_like(a) | 与a同尺寸的全1矩阵 |
zeros_like(a) | 与a同尺寸的全0矩阵 |
full_like(a,value) | 与a同尺寸的全value值矩阵 |
linspace(start,stop,num) | 根据起止数据等间距地填充数据,形成数组 |
获取矩阵的参数
矩阵的参数有很多,只列举几个常见的,其余以后遇到再补
矩阵的维数
a=np.array([[1,2,3,4,5], [6,7,8,9,10]])
print(a.ndim)
# 2
矩阵的尺寸
这里有好多种获取方法,最常用的一般是len()
,a.shape
,前者只返回第