numpy.argmin()||argmax()结构及用法||详解axis
发布日期:2021-05-07 14:30:42 浏览次数:23 分类:精选文章

本文共 1298 字,大约阅读时间需要 4 分钟。

NumPy argmin 和 argmax 功能详解

argmin 函数概述

NumPy 的 argmin 函数用于沿着指定的轴找到数组中的最小值,并返回这些最小值对应的索引。该函数对于数组的处理方式类似于 min 函数,但它返回的是索引而不是值本身。

函数参数说明

  • a:输入数组,支持任意形状的数组。
  • axis:指定沿着哪个轴进行操作,默认为 0,即沿着数组的第一个轴(行方向)。
  • out:可选输出数组,如果指定了一个数组 b,则结果会存储在 b 中。

返回值

  • 返回值:一个整数数组,形状与输入数组 a 去掉指定轴后的结果相同。每个元素对应于一个最小值所在的位置。

示例说明

展平、axis=0、axis=1 的三种情况

  • 展平(axis=0)

    axis=0 时,函数会将数组展平,返回一个一维数组,其中每个元素对应原数组中行中最小值的位置。

  • axis=0

    假设输入数组 a 的形状为 (2, 3, 2),沿着 axis=0 的处理结果为:

    [[1, 2, 3], [4, 5, 6]]

    最小值的位置为 [0, 0][1, 0],因此返回的索引数组为 (0, 0)(1, 0),最终结果为:

    [[0, 1, 2], [1, 2, 3]]
  • axis=1

    axis=1 时,函数会沿着列进行处理。假设输入数组 a 的形状为 (2, 3, 2),沿着 axis=1 的结果为:

    [[1, 2, 3], [4, 5, 6]]

    最小值的位置为 [0, 0][1, 0],因此返回的索引数组为 (0, 0, 0)(1, 0, 0),最终结果为:

    [[0, 1, 2], [1, 2, 3]]
  • axis=2

    axis=2 时,函数会沿着第三个轴进行处理。假设输入数组 a 的形状为 (2, 3, 2),沿着 axis=2 的结果为:

    [[1, 2, 3], [4, 5, 6]]

    最小值的位置为 [0, 0][1, 0],因此返回的索引数组为 (0, 0, 0)(1, 0, 0),最终结果为:

    [[0, 1, 2], [1, 2, 3]]
  • 多个最小值的情况

    如果在某个轴上有多个最小值,argmin 函数会仅返回第一个最小值的索引位置。例如,假设输入数组 a 的形状为 (2, 3, 2),其中某个位置的值为 0,沿着 axis=0 的结果为:

    [[0, 2, 3], [0, 5, 6]]

    此时,argmin(a, axis=0) 会返回 [0, 0][1, 0],即:

    [[0, 1, 2], [0, 2, 3]]

    argmax 函数简述

    argmax 函数的工作原理与 argmin 类似,但它是用来找到数组中沿着指定轴的最大值的位置。使用方式与 argmin 相同,只是返回最大值的索引。

    示例总结

    通过上述示例可以看出,argminargmax 函数的核心作用是沿着指定轴找到最小值或最大值的位置,并返回这些位置的索引数组。选择不同的 axis 值会影响函数的处理方向和结果的结构。理解这些函数的用法对于数据分析和科学计算是非常有帮助的。

    上一篇:matplotlib.pyplot.text()结构及用法||参数详解
    下一篇:numpy.where()、numpy.nonzero()结构及用法||参数详解

    发表评论

    最新留言

    关注你微信了!
    [***.104.42.241]2025年05月08日 07时45分15秒