scipy.stats.mstats.

hdquantiles#

scipy.stats.mstats.hdquantiles(data, prob=(0.25, 0.5, 0.75), axis=None, var=False)[source]#

使用 Harrell-Davis 方法計算分位數估計。

分位數估計值計算為順序統計的加權線性組合。

參數:
dataarray_like

資料陣列。

probsequence, optional

用於計算分位數的機率序列。

axisint or None, optional

沿著哪個軸計算分位數。如果為 None,則使用展平的陣列。

varbool, optional

是否返回估計值的變異數。

返回:
hdquantilesMaskedArray

分位數的 (p,) 陣列(如果 var 為 False),或分位數和變異數的 (2,p) 陣列(如果 var 為 True),其中 p 是分位數的數量。

範例

>>> import numpy as np
>>> from scipy.stats.mstats import hdquantiles
>>>
>>> # Sample data
>>> data = np.array([1.2, 2.5, 3.7, 4.0, 5.1, 6.3, 7.0, 8.2, 9.4])
>>>
>>> # Probabilities at which to compute quantiles
>>> probabilities = [0.25, 0.5, 0.75]
>>>
>>> # Compute Harrell-Davis quantile estimates
>>> quantile_estimates = hdquantiles(data, prob=probabilities)
>>>
>>> # Display the quantile estimates
>>> for i, quantile in enumerate(probabilities):
...     print(f"{int(quantile * 100)}th percentile: {quantile_estimates[i]}")
25th percentile: 3.1505820231763066 # may vary
50th percentile: 5.194344084883956
75th percentile: 7.430626414674935