安装与导入
pip安装
pip install numpy
导入numpy,一般使用np作为其别名。
In[1]:import numpyas np
数据类型及其转换
N维数组对象——ndarray,能够将N维数组做类似单个变量的运算。例如:
In[2]: a=np.array([1,2])
In[3]: b=np.array([2,3])
In[4]: a*b
Out[4]: array([2,6])
In[5]: a+b
Out[5]: array([3,5])
注意,数组运算相乘是对应元素分别相乘,和矩阵相乘不同。
np.array
参数 | 说明 |
---|---|
object | 可以是列表,元组,集合、字典等 |
dtype | 数据类型(可不指定,会自动识别),常见有np.int32、np.float32、np.uint8(主要用于图像) |
In[14]: np.array([1,2])
Out[14]: array([1,2])
In[15]: np.array((1,2))
Out[15]: array([1,2])
In[16]: np.array({1,2})
Out[16]: array({1,2}, dtype=object)
In[17]: np.array({'2':2})
Out[17]: array({'2':2}, dtype=object)
print函数打印时的区别:
In[18]:print([1,2])[1,2]
In[19]:print(np.array([1,2]))[12]
np.mat
会自动将一维数据类型转化为二维矩阵。
参数 | 说明 |
---|---|
object | 可以是列表,元组,集合、字典等 |
dtype | 数据类型设置同np.array |
In[20]: np.mat([1,2])
Out[20]: matrix([[1,2]])
In[21]: np.mat((1,2))
Out[21]: matrix([[1,2]])
In[22]: np.mat({1,2})
Out[22]: matrix([[{1,2}]], dtype=object)
In[23]: np.mat({'1':2})
Out[23]: matrix([[{'1':2}]], dtype=object)
np.tolist
从名字可以看出,这个函数的作用是使numpy中的矩阵和数组存储类型转化为python的内置列表类型。
In[8]: a= np.ones((3,3))
In[9]: a
Out[9]:
array([[1.,1.,1.],[1.,1.,1.],[1.,1.,1.]])
In[10]: a.tolist()
Out[10]:[[1.0,1.0,1.0],[1.0,1.0,1.0],[1.0,1.0,1.0]]
In[11]: b= np.mat(a)
In[12]: b
Out[12]:
matrix([[1.,1.,1.],[1.,1.,1.],[1.,1.,1.]])
In[13]: b.tolist()
Out[13]:[[1.0,1.0,1.0],[1.0,1.0,1.0],[1.0,1.0,1.0]]
数组、矩阵、列表的不同点
四则运算比较
运算 | 列表 | 数组 | 矩阵 |
---|---|---|---|
a | [1,2] | array([1,2]) | matrix([1,2]) |
b | [3,4] | array([3,4]) | matrix([3,4]) |
a+b | [1,2,3,4] | array([4, 6]) | matrix([[4, 6]]) |
a-b | 无 | array([-2, -2]) | matrix([[-2, -2]]) |
a*b | 无 | array([3,8]) | 矩阵乘法 |
a/b | 无 | 无 | 无 |
append方法 | a.append(b) =[1,2,[3,4]] | np.append(a,b)=array([1,2,3,4]) | 无 |
print(a) | [1,2] | [1 2] | [[1 2]] |
其他 | np.dot |