numpy 标准差

2024 年 8 月 29 日 | 阅读 3 分钟

Python 的 numpy 模块提供了一个名为 numpy.std() 的函数,用于计算沿指定轴的标准差。 此函数返回数组元素的标准差。 平均平方偏差(从均值计算得出)的平方根称为标准差。 默认情况下,标准差是针对展平后的数组计算的。 借助 x.sum()/N,通常计算平均平方偏差,其中 N=len(x)。

标准差=sqrt(mean(abs(x-x.mean( ))**2

语法

参数

a:类似数组

此参数定义了要计算其元素标准差的源数组。

axis:无、整数或整数元组(可选)

它是在其上计算标准差的轴。 默认情况下,计算展平后数组的标准差。 如果是整数元组,则对多个轴执行标准差,而不是像以前那样对单个轴或所有轴执行。

dtype:data_type(可选)

此参数定义了用于计算标准差的数据类型。 默认情况下,整数类型数组的数据类型为 float64,而对于浮点类型数组,则与数组类型相同。

out:ndarray(可选)

此参数定义了要在其中放置结果的备用输出数组。 此备用 ndarray 的形状与预期输出相同。 但是,我们会根据需要进行类型转换。

ddof:int(可选)

此参数定义了自由度增量。 在计算中使用 N-ddof 除数,其中 N 是元素的数量。 默认情况下,此参数的值设置为 0。

keepdims:bool(可选)

它是可选的,当值为 true 时,将保留缩减轴作为结果中大小为 1 的维度。 当它传递默认值时,它将允许非默认值通过 ndarray 子类的 mean 方法传递,但 keepdims 将不会传递。 此外,输出或结果将正确地针对输入数组进行广播。

返回值

此函数将返回一个包含标准差的新数组。 如果我们未将“out”参数设置为 None,则它将返回输出数组的引用。

示例 1

输出

3.391164991562634

在上面的代码中

  • 我们使用别名 np 导入了 numpy。
  • 我们通过 array() 函数创建了一个数组“a”。
  • 我们声明了变量“b”并分配了 std() 函数的返回值。
  • 我们在函数中传递了数组“a”
  • 最后,我们尝试打印 'b' 的值。

在输出中,显示了一个包含标准差的数组。

示例 2

输出

array([0.5, 0.5, 0.5, 0.5])

示例 3

输出

array([3.35410197, 3.35410197])

示例 4

在上面的代码中

  • 我们使用别名 np 导入了 numpy。
  • 我们使用 np.zeros() 函数创建了一个数组“a”,其数据类型为 np.float32。
  • 我们将值 0.1 分配给第一行元素,将值 1.0 分配给第二行元素。
  • 我们在函数中传递了数组“a”
  • 最后,我们尝试打印 'b' 的值。

在输出中,显示了标准差,这可能不准确。

输出

0.45000008

示例 5

输出

0.4499999992549418

下一个主题numpy.argmax()