Numpy介绍(一)

Numpy作为Python强大的扩充程序库,是我们在用python时最重要的工具之一。Numpy支持高级大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库,可以当成是python中的matlab实现。

首先,要使用这个库,我们必须导入它。

import numpy as np #np是非常普遍的写法

要定义一个数组,可以有多种形式,

a=np.arange(10)    #a=[0 1 2 3 4 5 6 7 8 9]
b=np.arange(3,8)   #b=[3 4 5 6 7]
c=np.linspace(1,10,4) #c=[1 4 7 10]
d=np.ones([3,4])   #d为一个3*4的矩阵,且每个值均为1
e=np.zeros([3,4])  #e为一个3*4的矩阵,且每个值均为0

数组的属性可按如下查询,

a.size #元素个数
a.shape #形状
a.ndim #维度
a.dtype #元素的数据类型

list转换成numpy,

np.array(list,dtype=np.float) #dtype可以不指定

np.dtype有如下类型,

np.bool
np.int
np.float
np.complex
np.string_
np.unicode_

Numpy中的random模块也是我们在编程中常用的模块。

np.random.rand(10, 10)    #创建10*10的数组(范围在0至1之间)
np.random.uniform(0, 100) #创建0~100内的一个数
np.random.randint(0, 100) #创建0~100内的一个整数
arr = np.random.normal(1.75, 0.1, (4, 5)) #创建均值为1.75,方差为0.1的正太分布,指定形状为4*5

对数组进行的操作如下,

np.mean(axis=None) #取均值
np.average(axis=None,weights=None) #加权平均
np.var(axis=None) #取方差
np.std(axis=None) #取标准差
np.min(axis=None) #取最小值
np.argmin(axis=None) #获取最小值的下标
np.max(axis=None) #取最大值
np.argmax(axis=None) #获取最大值的下标
np.sort(axis=None) #从小到大排序
np.sum(axis=None) #求和
np.dot(a,b) #a和b的叉乘
a.*b        #a和b的点乘
np.hstack((a,b)) #a和b的水平拼接
np.vstack((a,b)) #a和b的垂直拼接

猜你喜欢

转载自blog.csdn.net/vandance/article/details/81838542