NumPy PTP 函数

NumPyNumPyBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在本实验中,你将学习 Python 中的 numpy.ptp() 函数。"ptp" 代表 "peak to peak"(峰值到峰值)。该函数用于返回沿轴的值范围。范围可以通过 range = maximum_value - minimum_value 计算得出。

虚拟机提示

虚拟机启动完成后,点击左上角切换到 Notebook 选项卡以访问 Jupyter Notebook 进行练习。

有时,你可能需要等待几秒钟,直到 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。

如果在学习过程中遇到问题,请随时向 Labby 提问。在实验结束后提供反馈,我们将及时为你解决问题。

导入 NumPy 库

你需要使用以下代码导入 NumPy 库:

import numpy as np

实现函数

使用 numpy.ptp() 函数计算数组沿轴的范围。该函数的语法如下:

numpy.ptp(a, axis=None, out=None, keepdims=<no value>)

参数

该函数接受以下参数:

  • a: 表示输入数组。
  • axis: 表示我们希望计算范围值的轴。默认情况下,输入数组会被展平(即作用于所有轴)。
  • out: 一个可选参数,用于指定一个替代数组来存储该函数的结果或输出。该数组必须具有与预期输出相同的维度。

返回值

该函数返回数组的范围(如果轴为 None,则返回标量值),或沿指定轴的值范围的数组。

示例 1

在这一步中,你将使用一个最后一个元素为 NaN 的一维数组,并检查结果。使用以下代码:

input_arr = [1, 10, 7, 20, 11, np.nan]
print("The Input array is : ")
print(input_arr)
print("The Range of input array is : ")
print(np.ptp(input_arr))

如果数组中有一个值为 NaN,那么其范围也将为 NaN。

示例 2

在这一步中,你将使用该函数的不同参数。使用以下代码:

inp = [[15, 18, 16, 63, 44], [19, 4, 29, 5, 20], [24, 4, 54, 6, 4,]]
print("\nThe Input array is:")
print(inp)

## 计算展平数组的范围:
print("\nThe Range of the array when the axis = None : ")
print(np.ptp(inp))

## 沿第一个轴的范围,其中 axis=0 表示垂直方向
print("The Range of the array when the axis = 0 : ")
print(np.ptp(inp, axis=0))

## 沿第二个轴的范围,其中 axis=1 表示水平方向
print("The Range of the array when the axis = 1: ")
print(np.ptp(inp, axis=1))

输出

输出应显示 numpy.ptp() 函数返回数组沿轴的范围。

总结

在本实验中,你学习了 Python 中的 numpy.ptp() 函数。你还了解了它的语法、参数和返回值。此外,你通过不同的示例更好地理解了该函数。numpy.ptp() 函数是 NumPy 库中用于统计操作的重要工具。