Python - AI 助手

Python statistics.quantiles() 函数



Python 的 statistics.quantiles() 函数将数据划分为 'n' 个连续的区间,每个区间具有相同的概率。每个概率返回一个包含 'n-1' 个区间的列表。

计算分位数的函数可以根据数据是否包含或排除总体中可能的最低值和最高值而有所不同。数据可以是可迭代的样本数据,数据中的数据点数应大于 n。如果数据点少于两个,则此函数会抛出 StaticError 异常。

在此函数中,默认值为“exclusive”(排他),这用于从可能具有更极端值的总体中进行数据采样,即在样本中发现的值。

而“inclusive”(包含)用于描述总体数据或已知包含总体中最常见极端值的样本。数据中的最小值被视为第 0 个百分位数,最大值被视为第 100 个百分位数。

语法

以下是 statistics.quantiles() 函数的基本语法:

statistics.quantiles(data, *, n=4, method='exclusive')

参数

这里,数据和权重值可以用作来自排他函数的任何序列、列表或迭代器。

返回值

此函数返回一个包含 n-1 个分割点的列表,这些分割点将区间分开。

示例 1

在下面的示例中,我们使用 statistics.quantiles() 函数计算经验样本数据的十分位数分割点。

data = [105, 129, 87, 86, 111, 111, 89, 81, 108, 92, 110,
        100, 75, 105, 103, 109, 76, 119, 99, 91, 103, 129,
        106, 101, 84, 111, 74, 87, 86, 103, 103, 106, 86,
        111, 75, 87, 102, 121, 111, 88, 89, 101, 106, 95,
        103, 107, 101, 81, 109, 104]
import statistics
quantiles = statistics.quantiles(data)
print(quantiles)

输出

输出结果如下所示:

[87.0, 102.5, 108.25]

示例 2

现在我们只计算一个数据点,这将返回一个 StaticError 异常。

data = ["welcome to tutorials point"]
import statistics
quantiles = statistics.quantiles(data)
print(quantiles)

输出

结果如下所示:

Traceback (most recent call last):
  File "/home/cg/root/48234/main.py", line 3, in <module>
    quantiles = statistics.quantiles(data)
  File "/usr/lib/python3.10/statistics.py", line 662, in quantiles
    raise StatisticsError('must have at least two data points')
statistics.StatisticsError: must have at least two data points

示例 3

这里,我们使用 statistics.quantiles() 函数计算一个基本程序。

data = [2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 2, 3, 4, 5, 6, 2, 3, 4, 5, 6, 2, 2, 2, 2, 3, 3, 3, 4, 4, 2]
import statistics
quantiles = statistics.quantiles(data)
print(quantiles)

输出

我们将获得如下所示的输出:

[2.0, 3.0, 5.0]
python_modules.htm
广告