NumPy sign() 函数
NumPy sign() 函数用于确定数组中每个元素的符号。负值返回 -1,零返回 0,正值返回 1。
语法
以下是 NumPy sign() 函数的语法 -
numpy.sign(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True)
参数
此函数接受以下参数 -
- x: 需要确定元素符号的输入数组。
- out(可选): 存储结果的位置。如果提供,则必须具有输入广播到的形状。如果未提供或为 None,则返回一个新分配的数组。
- where(可选):此条件通过输入进行广播。在条件为 True 的位置,out 数组将设置为 ufunc 结果。否则,它将保留其原始值。
- casting(可选):控制可能发生的数据转换类型。默认为"same_kind"。
- order(可选):控制结果的内存布局顺序。"C"表示 C 顺序,"F"表示 Fortran 顺序,"A"表示如果输入均为 F,则为"F",否则为"C","K"表示尽可能匹配输入的布局。
- dtype(可选):返回数组的类型以及元素求和的累加器的类型。除非指定 dtype,否则默认使用 x 的 dtype。
- subok(可选): 如果为 True,则将传递子类,否则返回的数组将被强制为基类数组。
返回值
此函数返回一个数组,其中包含输入数组 x 中每个元素的符号。如果提供了 out,则返回对 out 的引用。
示例:sign() 函数的基本用法
在以下示例中,我们创建一个包含混合有符号数的一维数组,并使用 sign() 函数确定每个元素的符号 -
import numpy as np # 创建一维数组 arr = np.array([-5, 0, 3, -2, 4]) # 确定每个元素的符号 result = np.sign(arr) print(result)
以下是获得的输出 -
[-1 0 1 -1 1]
示例:sign() 函数处理浮点数
在此示例中,我们创建一个浮点数数组,并使用 sign() 函数查找这些数字的符号 -
import numpy as np # 创建一个一维浮点数数组 arr = np.array([-1.5, 2.0, -3.5, 0.0, 4.5]) # 确定每个元素的符号 result = np.sign(arr) print(result)
这将产生以下结果 -
[-1. 1. -1.0. 1.]
示例:sign() 函数处理复数
在本例中,我们创建一个复数数组,并使用 sign() 函数确定其实部的符号 -
import numpy as np # 创建复数数组 arr = np.array([1+2j, -3-4j, 0+1j, -2+0j]) # 确定每个元素实部的符号 result = np.sign(arr) print(result)
以下是上述代码的输出 -
[ 1.+0.j -1.+0.j 1.+0.j -1.+0.j]
示例:sign() 函数与矩阵的结合
在本例中,我们创建一个包含混合有符号数的二维数组(矩阵),并使用 sign() 函数确定每个元素的符号 -
import numpy as np # 创建二维数组 arr = np.array([[1, -2, 0], [-3, 4, -5]]) # 确定每个元素的符号 result = np.sign(arr) print(result)
这将产生以下结果 -
[[ 1 -1 0] [-1 1 -1]]
numpy_arithmetic_operations.html