目录
- 安装与导入
- 数据类型及其转换
- 数组、矩阵、列表的不同点
- 四则运算比较
安装与导入
pip安装
pip install numpy
导入numpy,一般使用np作为其别名。
In [1]: import numpy as 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])
注意,数组运算相乘是对应元素分别相乘,和矩阵相乘不同。
参数 | 说明 |
---|---|
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]))
[1 2]
会自动将一维数据类型转化为二维矩阵。
参数 | 说明 |
---|---|
object | 可以是列表,元组,集合、字典等 |
dtype | 数据类型设置同 |
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)
从名字可以看出,这个函数的作用是使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方法 | (b) =[1,2,[3,4]] | (a,b)=array([1,2,3,4]) | 无 |
print(a) | [1,2] | [1 2] | [[1 2]] |
其他 |