numpy reshape函数_numpy回顾小结(一)

d3f349c4cf6992c8fa2c4be54759fd2d.png

又一次,回顾一下numpy,记录如下。


numpy (numerical python),python用来进行科学计算的一个基础库,它包含了大量数学和机器学习的包

The fundamental package for scientific computing with Python

numpy官网:NumPy

numpy的基础,是ndarray(N-dimensional array,N维数组),是一种由同质元素组成的多维数组,元素数量,是事先准备好的。

数组的类型,是由dtype(data-type,数据类型)来指定的,每个ndarray只有一种数据类型。

numpy数据的大小,是创建的时候指定好的。

创建数组

最简单的方式,就是使用array()函数

import numpy as np
a = np.array([1,2,3])

6cb38a30c96734302704b48269b0d8b3.png
b = np.array([[1,2,3] , [4,5,6]])
b

376ba4c820345b17c72ee396465dca18.png

查看数组的基本信息

## 数组的维数
b.ndim

## 数组的形状,几行几列
b.shape

## 数据元素个数
b.size

445ab29d7e0fc396629d11ca187136e7.png

数据类型dtype

b.dtype

可以直接查看数组的数据类型

6f53d09bbaf7524b488dc6a8da35d751.png

常用初始化函数

numpy.zeros( shape, dtype=float, order='C')

指定数组大小,生成零值数组

np.zeros(3)

0986d9cd55b288da7ff1626c12fd5c39.png
np.ones((4,4))
np.ones(5)

df158d496636d9c3e12d54120f4ec00e.png
numpy.arange([ start, ] stop, [ step, ] dtype=None)

根据传入的参数,生成一个数组

start,默认从1开始,stop必须传入,step,默认也是1,[start,stop),根据传入的开始值和结束值,生成数组

np.arange(3)
np.arange(2,5)
np.arange(5,20,2)

659771646b2e4361d89b4dc6817a4f42.png
numpy.linspace( start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)

和arange类似,但是这里的第三个参数,不是step,而是想要将[start,stop)分割成多少份

np.linspace(1,10,2)
np.linspace(5,100,20)

846bdd18d87ea32b8b2652c2fb6699f0.png

这里生成的都是一维数组,可以结合reshape函数,转换为多维数组

numpy.random.random( size=None)

随机数数组,size表示数组个数

np.random.random(3)
np.random.random(10)

4412603c7d50a4b1e5f622f233509e96.png

基本操作

  • 算数运算
a = np.arange(5)

a+4
a-10
a*2
a/3

b06aa7a52cc0a778aa984d5728d60e43.png

数组和数值之间的加减乘除

数组和数组之间,同样可以进行四则运算

b = np.linspace(10,30,5)
a+b
a-b
a*b
a/b

ddd0dc4cc64c0486f534db72d06d1845.png

数组之间的加减乘除,都是按元素位置匹配对应的

这里的乘法,可能要关注一下,这里是元素间的乘法

如果要求矩阵积,也就是矩阵相乘,这里需要保证第一个矩阵的列数等于第二个矩阵的行数

3796c267ef75019ea10f8380dbec8182.png
a = np.random.random(6).reshape((2,3))
b = np.random.random(6).reshape((3,2))
np.dot(a,b)
a.dot(b)

5b3b9c729e3fa2a221e6630379b3e1d1.png

58eaea15e97e1c63dadffdda83c55352.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值