📜  Python numpy标准差

📅  最后修改于: 2020-10-27 08:12:57             🧑  作者: Mango

numpy标准差

Python的numpy模块提供了一个名为numpy.std()的函数,用于计算沿指定轴的标准偏差。此函数返回数组元素的标准偏差。平均平方偏差(根据平均值计算)的平方根称为标准偏差。默认情况下,将为展平数组计算标准偏差。通常在x.sum()/ N的帮助下计算平均平方偏差,这里N = len(x)。

标准偏差= sqrt(平均值(abs(xx.mean())** 2

句法:

numpy.std(a, axis=None, dtype=None, out=None, ddof=0, keepdims=)

参量

一个:array_like

该参数定义了源数组,其元素标准偏差已计算出来。

轴:无,整数或整数元组(可选)

它是计算标准偏差所沿的轴。默认情况下,将计算展平数组的标准偏差。如果是整数元组,请在多轴而不是以前的单轴或所有轴上执行标准偏差。

dtype:data_type(可选)

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

out:ndarray(可选)

此参数定义要在其中放置结果的替代输出数组。此替代ndarray具有与预期输出相同的形状。但是我们在必要时强制转换类型。

ddof:int(可选)

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

keepdims:布尔(可选)

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

退货

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

范例1:

a=np.array([[1,4,7,10],[2,5,8,11]])
b=np.std(a)
b

输出:

3.391164991562634

在上面的代码中

  • 我们导入了别名为np的numpy。
  • 我们通过array()函数创建了一个数组’a’。
  • 我们已经声明了变量’b’并分配了std()函数的返回值。
  • 我们已经在函数传递了数组’a’
  • 最后,我们尝试print‘b’的值。

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

范例2:

a=np.array([[1,4,7,10],[2,5,8,11]])
b=np.std(a, axis=0)
b

输出:

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

范例3:

a=np.array([[1,4,7,10],[2,5,8,11]])
b=np.std(a, axis=1)
b

输出:

array([3.35410197, 3.35410197])

范例4:

import numpy as np
a = np.zeros((2, 512*512), dtype=np.float32)
a[1, :] = 1.0
a[0, :] = 0.1
b=np.std(a)
b

在上面的代码中

  • 我们导入了别名为np的numpy。
  • 我们使用数据类型为np.float32的np.zeros()函数创建了一个数组’a’。
  • 我们已经值0.1分配给第1行和1.0到第二行中的元素的元素。
  • 我们已经在函数传递了数组’a’
  • 最后,我们尝试print‘b’的值。

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

输出:

0.45000008

范例5:

import numpy as np
a = np.zeros((2, 512*512), dtype=np.float32)
a[1, :] = 1.0
a[0, :] = 0.1
b=np.std(a ,dtype=np.float64))
b

输出:

0.4499999992549418