mirror of
https://github.com/python/cpython.git
synced 2025-08-30 21:48:47 +00:00
bpo-44150: Support optional weights parameter for fmean() (GH-26175)
This commit is contained in:
parent
18f41c04ff
commit
be4dd7fcd9
4 changed files with 59 additions and 9 deletions
|
@ -1972,6 +1972,27 @@ class TestFMean(unittest.TestCase):
|
|||
with self.assertRaises(ValueError):
|
||||
fmean([Inf, -Inf])
|
||||
|
||||
def test_weights(self):
|
||||
fmean = statistics.fmean
|
||||
StatisticsError = statistics.StatisticsError
|
||||
self.assertEqual(
|
||||
fmean([10, 10, 10, 50], [0.25] * 4),
|
||||
fmean([10, 10, 10, 50]))
|
||||
self.assertEqual(
|
||||
fmean([10, 10, 20], [0.25, 0.25, 0.50]),
|
||||
fmean([10, 10, 20, 20]))
|
||||
self.assertEqual( # inputs are iterators
|
||||
fmean(iter([10, 10, 20]), iter([0.25, 0.25, 0.50])),
|
||||
fmean([10, 10, 20, 20]))
|
||||
with self.assertRaises(StatisticsError):
|
||||
fmean([10, 20, 30], [1, 2]) # unequal lengths
|
||||
with self.assertRaises(StatisticsError):
|
||||
fmean(iter([10, 20, 30]), iter([1, 2])) # unequal lengths
|
||||
with self.assertRaises(StatisticsError):
|
||||
fmean([10, 20], [-1, 1]) # sum of weights is zero
|
||||
with self.assertRaises(StatisticsError):
|
||||
fmean(iter([10, 20]), iter([-1, 1])) # sum of weights is zero
|
||||
|
||||
|
||||
# === Tests for variances and standard deviations ===
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue