Numpy统计函数与梯度函数

 

Numpy统计函数

函数说明
sum(a,axis=None)根据给定轴axis计算数组a相关元素之和,axis整数或元组
mean(a,axis=None)根据给定轴axis计算数组a相关元素的期望,axis整数或元组
average(a,axis=None,weights=None)根据给定轴axis计算数组a相关元素的加权平均值
std(a,axis=None)根据给定轴axis计算数组a相关元素的标准差
var(a,axis=None)

根据给定轴axis计算数组a相关元素的方差

                                                                        【注】axis默认为None   计算整个数组

import numpy as np
a=np.arange(15).reshape(3,5)
b=np.sum(a)
c=np.mean(a,axis=1)
d=np.mean(a,axis=0)
e=np.average(a,axis=0,weights=[10,5,1])
f=np.std(a)
g=np.var(a)
ls=[a,b,c,d,e,f,g]
for i in ls:
    print(i)

[[ 0  1  2  3  4]
 [ 5  6  7  8  9]
 [10 11 12 13 14]]
105
[ 2.  7. 12.]
[5. 6. 7. 8. 9.]
[2.1875 3.1875 4.1875 5.1875 6.1875]
4.320493798938574
18.666666666666668
函数说明
min(a) max(a)计算数组a中元素的最小值、最大值
argmin() argmax()计算数组a中元素最小值、最大值的降一维后下标

unravel_index(index,shape)

根据shape将一维下标index转换成多维下标

ptp(a)

计算数组a中元素最大值与最小值的差
median(a)计算数组a中元素的中位数(中值)
import numpy as np
a=np.arange(15,0,-1).reshape(3,5)
print(a)
b=np.argmin(a)
print(b)
c=np.unravel_index(b,a.shape)
print(c)
d=np.ptp(a)
print(d)
e=np.median(a)
print(e)

[[15 14 13 12 11]
 [10  9  8  7  6]
 [ 5  4  3  2  1]]
14
(2, 4)
14
8.0

Numpy梯度函数

1.np.gradient(f)               计算数组中元素的梯度,当f为多维时,返回每个维度梯度

梯度:连续值之间的变化率,即斜率
XY坐标轴连续三个X坐标对应的Y轴值a, b,c  ;其中b 的梯度是:(c-a)/2

import numpy as np
a=np.random.randint(0,50,(3,5))
b=np.gradient(a)
print(a)
print(b)

[[11  4  6 42  9]
 [ 9 49 33 17 18]
 [12 40 35 13 32]]

[array([[ -2. ,  45. ,  27. , -25. ,   9. ],
       [  0.5,  18. ,  14.5, -14.5,  11.5],
       [  3. ,  -9. ,   2. ,  -4. ,  14. ]]), 
array([[ -7. ,  -2.5,  19. ,   1.5, -33. ],
       [ 40. ,  12. , -16. ,  -7.5,   1. ],
       [ 28. ,  11.5, -13.5,  -1.5,  19. ]])]


【注】array([[ -2. ,  45. ,  27. , -25. ,   9. ],
                     [  0.5,  18. ,  14.5, -14.5,  11.5],
                     [  3. ,  -9. ,   2. ,  -4. ,  14. ]])

为最外层维度(列):-2=9-11 45=49-4   ...... (上边界:下一行减本行)

                                   0.5=(12-11)/2 ...............

                                   3=12-9   (下边界:本行-下一行)

 

 

 

 array([[ -7. ,  -2.5,  19. ,   1.5, -33. ],
           [ 40. ,  12. , -16. ,  -7.5,   1. ],
           [ 28. ,  11.5, -13.5,  -1.5,  19. ]])]  

 同理

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值