pandas.DataFrame.std#
- DataFrame.std(*, axis=0, skipna=True, ddof=1, numeric_only=False, **kwargs)[source]#
Return sample standard deviation over requested axis.
Normalized by N-1 by default. This can be changed using the ddof argument.
- Parameters:
- axis{index (0), columns (1)}
For Series this parameter is unused and defaults to 0.
Warning
The behavior of DataFrame.std with
axis=None
is deprecated, in a future version this will reduce over both axes and return a scalar To retain the old behavior, pass axis=0 (or do not pass axis).- skipnabool, default True
Exclude NA/null values. If an entire row/column is NA, the result will be NA.
- ddofint, default 1
Delta Degrees of Freedom. The divisor used in calculations is N - ddof, where N represents the number of elements.
- numeric_onlybool, default False
Include only float, int, boolean columns. Not implemented for Series.
- **kwargsdict
Additional keyword arguments to be passed to the function.
- Returns:
- Series or scalar
Standard deviation over requested axis.
See also
Series.std
Return standard deviation over Series values.
DataFrame.mean
Return the mean of the values over the requested axis.
DataFrame.median
Return the median of the values over the requested axis.
DataFrame.mode
Get the mode(s) of each element along the requested axis.
DataFrame.sum
Return the sum of the values over the requested axis.
Notes
To have the same behaviour as numpy.std, use ddof=0 (instead of the default ddof=1)
Examples
>>> df = pd.DataFrame( ... { ... "person_id": [0, 1, 2, 3], ... "age": [21, 25, 62, 43], ... "height": [1.61, 1.87, 1.49, 2.01], ... } ... ).set_index("person_id") >>> df age height person_id 0 21 1.61 1 25 1.87 2 62 1.49 3 43 2.01
The standard deviation of the columns can be found as follows:
>>> df.std() age 18.786076 height 0.237417 dtype: float64
Alternatively, ddof=0 can be set to normalize by N instead of N-1:
>>> df.std(ddof=0) age 16.269219 height 0.205609 dtype: float64