numpy 基本知识总结2

numpy广播

numpy广播应该是它最重要的一个属性,下面通过一个例子直观地感受一下。

>>> a = np.array([[1,2],[3,4]])
>>> b = np.array([[5,6],[7,8]])
>>> a + b
array([[ 6,  8],
       [10, 12]])
>>> a - b
array([[-4, -4],
       [-4, -4]])
>>> a * b
array([[ 5, 12],
       [21, 32]])
>>> a / b
array([[ 0.2       ,  0.33333333],
       [ 0.42857143,  0.5       ]])

维度不同的广播

>>> a = np.array([[1,2,3],[4,5,6]])
>>> b = np.array([7,8,9])
>>> a + b
array([[ 8, 10, 12],
       [11, 13, 15]])
>>> a - b
array([[-6, -6, -6],
       [-3, -3, -3]])
>>> a * b
array([[ 7, 16, 27],
       [28, 40, 54]])
>>> a / b
array([[ 0.14285714,  0.25      ,  0.33333333],
       [ 0.57142857,  0.625     ,  0.66666667]])

numpy常用函数

numpy函数的使用都是通过np.function实现的。函数也是针对每一个元素进行运算。

三角函数

>>> a = np.array([0,30,60,90])
>>> np.sin(a * np.pi / 180)
array([ 0.       ,  0.5      ,  0.8660254,  1.       ])
>>> np.cos(a * np.pi / 180)
array([  1.00000000e+00,   8.66025404e-01,   5.00000000e-01,
         6.12323400e-17])
>>> np.tan(a * np.pi / 180)
array([  0.00000000e+00,   5.77350269e-01,   1.73205081e+00,
         1.63312394e+16])

上下取整函数

>>> a = np.array([1.2,3.5,6.7])
#向下取整
>>> np.floor(a)
array([ 1.,  3.,  6.])
#向上取整
>>> np.ceil(a)
array([ 2.,  4.,  7.])

统计函数

#中位数
>>> a = np.array([[1,2,3],[4,5,6]])
>>> np.median(a)
3.5

#均值
>>> np.mean(a)
3.5

#标准差
>>> np.std(a)
1.707825127659933

#方差
>>> np.var(a)
2.9166666666666665

排序、查找、计数函数

>>> a = np.array([[11,2,43],[34,15,46]])
>>> np.sort(a,axis = 1)
array([[ 2, 11, 43],
       [15, 34, 46]])

#返回指定轴上的最大最小索引
>>> np.argmax(a,axis = 1)
array([2, 2])
>>> np.argmin(a,axis = 1)
array([1, 1])

#np.where返回满足条件的元素索引

>>> a = np.array([[11,2,43],[34,15,46]])
>>> np.where(a>10)
(array([0, 0, 1, 1, 1]), array([0, 2, 0, 1, 2]))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值