Python Numpy.std() - Standard Deviation Function

Sohaib Atiq Jan 30, 2023
  1. Syntax of numpy.std()
  2. Example Codes: numpy.std() With 1-D Array
  3. Example Codes: numpy.std() With 2-D Array
  4. Example Codes: numpy.std() With dtype Specified
Python Numpy.std() - Standard Deviation Function

Numpy.std() function calculates the standard deviation of the given array along the specified axis.

Syntax of numpy.std()

numpy.std(arr, axis=None, dtype=float64)

Parameters

arr array_like
input array to calculate the standard deviation
axis None, int or tuple of int
Axis along which the standard deviation is computed.
axis=0 means standard deviation computed along the column,
axis=1 means standard deviation along the row.
It treats the multiple dimension array as a flattened list if axis is not given.
dtype dtype or None
Data type used during the calculation of the standard deviation.

Return

It returns the standard deviation of the given array, or an array with the standard deviation along the specified axis.

Example Codes: numpy.std() With 1-D Array

When the Python 1-D array is the input, Numpy.std() function calculates the standard deviation of all values in the array.

import numpy as np

arr = [10, 20, 30]
print("1-D array :", arr)
print("Standard Deviation of arr is ", np.std(arr))

Output:

1-D array : [10, 20, 30]
Standard deviation of arr is  8.16496580927726

Here, the 1-D array has the elements of 10, 20, and 30; therefore, the value in the returned DataFrame is the standard deviation without assigning any axis info.

Example Codes: numpy.std() With 2-D Array

import numpy as np

arr = [[10, 20, 30], [3, 50, 5], [70, 80, 90], [100, 110, 120]]

print("Two Dimension array :", arr)
print("SD of with no axis :", np.std(arr))
print("SD of with axis along column :", np.std(arr, axis=0))
print("SD of with axis aong row :", np.std(arr, axis=1))

Output:

Two Dimension array : [[10, 20, 30], [3, 50, 5], [70, 80, 90], [100, 110, 120]]
SD of with no axis : 41.21960159384798
SD of with axis along column : [40.73312534 33.54101966 45.87687326]
SD of with axis aong row : [ 8.16496581 21.6999744   8.16496581  8.16496581]

np.std(arr) treats the input array as the flattened array and calculates the standard deviation of this 1-D flattened array.

np.std(arr, axis=0) calculates the standard deviation along the column. It returns [40.73312534 33.54101966 45.87687326] as the standard deviation of each column in the input array.

np.std(arr, axis=1) calculates the standard deviation along the row. It returns [8.16496581 21.6999744 8.16496581 8.16496581] as the standard deviation of each row in the input array.

Example Codes: numpy.std() With dtype Specified

import numpy as np

arr = [10, 20, 30]
print("Single Dimension array :", arr)
print("SD of Single Dimension array :", np.std(arr))
print("SD value with float32 data :", np.std(arr, dtype=np.float32))
print("SD value with float64 data :", np.std(arr, dtype=np.float64))

Output:

Single Dimension array : [10, 20, 30]
SD of Single Dimension array : 8.16496580927726
SD value with float32 data : 8.164966
SD value with float64 data : 8.16496580927726

If dtype parameter is given in the numpy.std() function, it uses the specified data type during the computing of standard deviation.

It is obvious to notice that the standard deviation has a lower resolution if we assign dtype with float32 rather than float64.