White White.6098 2022-06-08 11:34 采纳率: 100%
浏览 20
已结题

numpy库中axis的有关问题

import numpy as np
c= np.arange(24).reshape(3,4,2)

img


它的c.sum(axis=0)的结果为:

img


是如何计算出来的?

  • 写回答

1条回答 默认 最新

  • 请叫我问哥 新星创作者: python技术领域 2022-06-08 11:58
    关注

    axis表示折叠第几维度
    你是三维列表,所以axis=0就是折叠0号维度。reshape(3,4,2),或者方括号从外向内数,依次为0,1,2号维度。
    所以折叠0号维度,就是变成4行2列的二维列表,所有数据在0号维度上求和,比如0+8+16=24,1+9+17=27
    同样地,还可以折叠1号或2号维度,变成3行2列,或3行4列的二维列表,所有数据在被折叠的维度上求和:

    >>> c.sum(axis=0)
    array([[24, 27],
           [30, 33],
           [36, 39],
           [42, 45]])
    >>> 
    >>> c.sum(axis=1)
    array([[12, 16],
           [44, 48],
           [76, 80]])
    >>> 
    >>> c.sum(axis=2)
    array([[ 1,  5,  9, 13],
           [17, 21, 25, 29],
           [33, 37, 41, 45]])
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月17日
  • 已采纳回答 6月9日
  • 创建了问题 6月8日