mirror of
https://github.com/python/cpython.git
synced 2025-12-08 06:10:17 +00:00
[3.14] gh-140938: Raise ValueError for infinite inputs to stdev/pstdev (GH-141531) (#141575)
gh-140938: Raise ValueError for infinite inputs to stdev/pstdev (GH-141531)
Raise ValueError for infinite inputs to stdev/pstdev
(cherry picked from commit f0a8bc737a)
---
Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com>
Co-authored-by: Gregory P. Smith <68491+gpshead@users.noreply.github.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
This commit is contained in:
parent
17e7aad5e3
commit
8a67e3c2b0
3 changed files with 24 additions and 5 deletions
|
|
@ -619,9 +619,14 @@ def stdev(data, xbar=None):
|
|||
if n < 2:
|
||||
raise StatisticsError('stdev requires at least two data points')
|
||||
mss = ss / (n - 1)
|
||||
try:
|
||||
mss_numerator = mss.numerator
|
||||
mss_denominator = mss.denominator
|
||||
except AttributeError:
|
||||
raise ValueError('inf or nan encountered in data')
|
||||
if issubclass(T, Decimal):
|
||||
return _decimal_sqrt_of_frac(mss.numerator, mss.denominator)
|
||||
return _float_sqrt_of_frac(mss.numerator, mss.denominator)
|
||||
return _decimal_sqrt_of_frac(mss_numerator, mss_denominator)
|
||||
return _float_sqrt_of_frac(mss_numerator, mss_denominator)
|
||||
|
||||
|
||||
def pstdev(data, mu=None):
|
||||
|
|
@ -637,9 +642,14 @@ def pstdev(data, mu=None):
|
|||
if n < 1:
|
||||
raise StatisticsError('pstdev requires at least one data point')
|
||||
mss = ss / n
|
||||
try:
|
||||
mss_numerator = mss.numerator
|
||||
mss_denominator = mss.denominator
|
||||
except AttributeError:
|
||||
raise ValueError('inf or nan encountered in data')
|
||||
if issubclass(T, Decimal):
|
||||
return _decimal_sqrt_of_frac(mss.numerator, mss.denominator)
|
||||
return _float_sqrt_of_frac(mss.numerator, mss.denominator)
|
||||
return _decimal_sqrt_of_frac(mss_numerator, mss_denominator)
|
||||
return _float_sqrt_of_frac(mss_numerator, mss_denominator)
|
||||
|
||||
|
||||
## Statistics for relations between two inputs #############################
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue