Numpy day3 for cvpytorch(The last)

这次是最后一部分了,主要针对一些有关数学的函数,因为再机器学习、深度学习、计算机视觉领域基本上常用的有关numpy的东西都在这里了。很遗憾,我没有太多精力和毅力取深究其中奥秘。我觉得这个说法应有意思的,numpy就是一片充满丰富资源的大海,我学到一些捕鱼技巧就够我用了。下面我放了一个总的API的链接,因为能容很多,我只挑了其中一部分。注意,我给的都是原始的API,具体用法还得看代码。另外的一些数学公式与python中的math库有重叠(如sin、cos、pi等),我现在也不知道到底哪个更好,所以就不列了。

英文官方教程链接

NumPy Reference — NumPy v1.22 Manualhttps://numpy.org/doc/stable/reference/index.html如有侵权,务必联系删除。

ndarray.argmax(axis=None,out=None)

(对应的是ndarray.argmin(axis=None,out=None))

axis指定维度(轴),返回值是最大(最小)元素的索引。

import numpy as np
a = np.array([[1,2],[2,4]])
b = a.argmax(axis=1)
#b = np.argmax(a,axis=1)
print(b)
#[1 1] 第1维,第1个(从0开始)

ndarray.astype(dtype,order='K',casting='unsafe',subok=True,copy=True)

拷贝数组,并映射到指定的类型。dtype指定类型,copy指定是否拷贝。

import numpy as np
a = np.array([1.0,2.4,3.6,4.5])
b = a.astype(int)
print(a)
#[1.  2.4 3.6 4.5] 这种拷贝不改变原来数组
print(b)
#[1 2 3 4] python中向下取整

 ndarray.clip(min=Nonemax=Noneout=None**kwargs)

返回一个再指定最小值和最大值之间的数组。

import numpy as np
a = np.array([1,3,6,9])
b = a.clip(min=3,max=8)
#b = np.clip(a,a_min=3,a_max=8)
print(b)
#[3 3 6 8]

ndarray.item(*args)

将数组的元素复制到标准的python标量(可以认为是一维列表)并返回。

import numpy as np
a = np.array([[1,2],[2,4]])
b = a.item((1,1))
print(b)
#4

 ndarray.max(axis=Noneout=Nonekeepdims=Falseinitial=<no value>where=True)

返回给定维度上的最大值。

import numpy as np
a = np.array([[1,2],[2,4]])
b = a.max()
#b = np.amax(a)
print(b)
#4

ndarray.mean(axis=Nonedtype=Noneout=Nonekeepdims=False*where=True)

返回指定维度上的平均值。更高维的我也有点弄不清。

import numpy as np
a = np.array([[1,3],[2,6]])
b = np.mean(a,axis=1)
print(b)
#[2. 4.]
c = np.mean(a,axis=0)
print(c)
#[1.5 4.5]

ndarray.ptp(axis=Noneout=Nonekeepdims=False)

返回给定维度上的最大值减最小值。

import numpy as np
a = np.array([[1,3],[2,6]])
b = a.ptp(axis=1)
#b = np.ptp(a,axis=1)
print(b)
#[2 4]

ndarray.squeeze(axis=None)

从a中删除长度为1的轴。

import numpy as np
a = np.array([[1,3]])
b = a.squeeze(axis=0)
#b = np.squeeze(a,axis=0)
print(b)
#[1 3]
print(a.shape)
#(1,2)
print(b.shape)
#(2,)

 ndarray.std(axis=Nonedtype=Noneout=Noneddof=0keepdims=False*where=True)

返回给定维度上的标准差。

import numpy as np
a = np.array([[1,2],[2,4]])
b = a.std(axis=1)
#b = np.std(a,axis=1)
print(b)
#[0.5 1.]

 numpy.dot(about=None)

数组的点积运算。2维及以下都可以看做矩阵运算,高维的我也弄不清楚。

import numpy as np
a = np.array([1,6])
b = np.array([2,3])
print(np.dot(a,b))
#20 1*2+6*3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值