numpy中的mean和std中axis的使用

n u m p y 中 的 m e a n 和 s t d 中 a x i s 的 使 用 numpy中的mean和std中axis的使用 numpymeanstdaxis使

numpy中axis参数说明:
axis=i,即沿着数组第i个下标变化方向进行操作。遍历完第i个下标所有的变化,求一次值。
axis=(i,j),即沿着数组第i和第j两个下标变化方向`进行操作。


a = np.array(
    [
        [
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
            
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
    
               [[1, 2, 3, 3], 
                [3, 4, 3, 3]],
         ],  
         [
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
            
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
    
               [[1, 2, 3, 3], 
                [3, 4, 3, 3]],
         ],
        [
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
            
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
    
               [[1, 2, 3, 3], 
                [3, 4, 3, 3]],
         ],
        [
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
            
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
    
               [[1, 2, 3, 3], 
                [3, 4, 3, 3]],
         ],
        [
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
            
              [[1, 2, 3, 3], 
               [3, 4, 3, 3]],
    
               [[1, 2, 3, 3], 
                [3, 4, 3, 3]],
         ],
    ]
)
a.shape

在这里插入图片描述

a[x,y,w,z]

数组a有四个轴分别是x,y,w,z轴,这四个轴也分别叫第0轴、第1轴、第2轴和第3轴。

当axis=0,即沿着第0个轴x下标变化的方向进行求和,第0轴降维,得到的shape=(3,2,4)

print(a.sum(axis=0))
print(a.sum(axis=0).shape)

在这里插入图片描述

沿着第0个轴x下标变化的方向进行

a[0][0][0][0]+a[1][0][0][0]+a[2][0][0][0]+a[3][0][0][0]+a[4][0][0][0] = 1+1+1+1+1 = 5
a[0][0][0][0]+a[1][0][0][0]+a[2][0][0][0]+a[3][0][0][0]+a[4][0][0][0] = 1+1+1+1+1 = 5
a[0][0][0][1]+a[1][0][0][1]+a[2][0][0][1]+a[3][0][0][1]+a[4][0][0][1] = 2+2+2+2+2 = 10
a[0][0][0][2]+a[1][0][0][2]+a[2][0][0][2]+a[3][0][0][2]+a[4][0][0][2] = 3+3+3+3+3 = 15
...

当axis=1,即沿着第1个轴y下标变化的方向进行求和,第1轴降维,得到的shape=(5,2,4)

print(a.sum(axis=1))
print(a.sum(axis=1).shape)

在这里插入图片描述

当axis=2,即沿着第1个轴w下标变化的方向进行求和,第2轴降维,得到的shape=(5,3,4)

print(a.sum(axis=2))
print(a.sum(axis=2).shape)

在这里插入图片描述

当axis=3,即沿着第1个轴z下标变化的方向进行求和,第3轴降维,得到的shape=(5,3,2)

print(a.sum(axis=3))
print(a.sum(axis=3).shape)

在这里插入图片描述

当axis=(0, 2, 3),即沿着第0,2,3个轴x,w,z下标变化的方向进行求和,降维,得到的shape=(3),遍历完下标所有的变化,求一次值。

a[5,3,2,4]
a[300,3,32,32]
np.mean(a, axis=(0, 2, 3))
a[x][0][w][z]+a[x][0][w][z]+a[x][0][w][z]+a[x][0][w][z]+a[x][0][w][z] =  5*2*4个数求平均 

a[x][1][w][z]+a[x][1][w][z]+a[x][1][w][z]+a[x][1][w][z]+a[x][1][w][z] =  5*2*4个数求平均

a[x][2][w][z]+a[x][0][w][z]+a[x][2][w][z]+a[x][2][w][z]+a[x][2][w][z]=   5*2*4个数求平均

在这里插入图片描述
在这里插入图片描述

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值