Source code for simplestatistics.statistics.sum_nth_power_deviations

"""
Implements sum_nth_power_deviations(x, n), which gives the sum of each value
in x (from the mean) to the Nth power.
"""

from .mean import mean
from .sum import sum # pylint: disable=redefined-builtin

[docs]def sum_nth_power_deviations(x, n): """ The sum of the deviations of each value (from the mean) to the Nth power. Args: x: List or tuple of numerical objects. n: Power to raise each deviation from the mean. Returns: Float of the sum of the deviations from the mean raised to Nth power. Examples: >>> sum_nth_power_deviations([1, 2, 3], 2) 2.0 >>> sum_nth_power_deviations([-1, 0, 2, 4], 3) 7.875 >>> sum_nth_power_deviations(4, 3) Traceback (most recent call last): ... TypeError: sum_nth_power_deviations() expects the data to be a list or tuple. """ if type(x) not in [list, tuple]: raise TypeError('sum_nth_power_deviations() expects the data to be a list or tuple.') m = mean(x[:]) n_deviations = [pow(num - m, n) for num in x] return(sum(n_deviations))