Numpy库教程(一)numpy库的安装与导入,列表、数组、矩阵的互相转换以及差异

安装与导入

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])

注意,数组运算相乘是对应元素分别相乘,和矩阵相乘不同。

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]))
[1 2]

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-barray([-2, -2])matrix([[-2, -2]])
a*barray([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
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值