关于Numpy中的axis问题

Numpy中的axis问题


1. 中文释义

axis
n. 轴(旋转物体假想的中心线); (尤指图表中的) 固定参考轴线,坐标轴; 对称中心线(将物体平分为二);
复数:axes

2. axis与多维数组

由于Numpy经常用于处理多维数组,我们常理解的行和列一般指二维数组,但对于计算机来说,它只认识下标

一维数组如 A[3] 只有一个下标, axis=0对应数组的列标, 使用axis=1会报错.

对于二维数组B[2][2], axis=0对应数组的行标, axis=0对应数组的行标.

对于三维数组则分别对应 .

对应代码分析如下:

import numpy as np
A = np.arange(14,2,-1)
B = np.arange(14,2,-1).reshape((3,4))

其中A为一维数组,B为二维数组,内容如下:

A
array([14, 13, 12, 11, 10,  9,  8,  7,  6,  5,  4,  3])
B
array([[14, 13, 12, 11],
       [10,  9,  8,  7],
       [ 6,  5,  4,  3]])

A.min(axis=0)

A对应axis=0这一行的最小值

B.min(axis=0)
array([6, 5, 4, 3])

B对应axis=0的最小值为每一列的最小值

B.min(axis=1)
array([11,  7,  3])

B对应axis=1的最小值为每行的最小值

3. 一个好用的记法

就是一句话:

axis等于几, 就从数组的第几个下标变化的方向移动(从零开始计数)

下面有两张图,一看便知:
图一是求A.min(axis=0), 我们可以看到, Numpy沿着行变列不变的方向移动,最终求出了数组每一列的最小值

图一

图二是求A.min(axis=1), 我们可以看到, Numpy沿着列变行不变的方向移动,最终求出了数组每一行的最小值

图二

–END–

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值