當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python SciPy stats.relfreq用法及代碼示例


本文簡要介紹 python 語言中 scipy.stats.relfreq 的用法。

用法:

scipy.stats.relfreq(a, numbins=10, defaultreallimits=None, weights=None)#

使用 histogram 函數返回相對頻率直方圖。

相對頻率直方圖是每個 bin 中的觀察數量相對於觀察總數的映射。

參數

a array_like

輸入數組。

numbins 整數,可選

用於直方圖的 bin 數量。默認值為 10。

defaultreallimits 元組(下,上),可選

直方圖範圍的下限值和上限值。如果沒有給出值,則使用比 a 中的值範圍稍大的範圍。特別是 (a.min() - s, a.max() + s) ,其中 s = (1/2)(a.max() - a.min()) / (numbins - 1)

weights 數組,可選

a中每個值的權重。默認為無,它為每個值賦予 1.0 的權重

返回

frequency ndarray

相對頻率的分箱值。

lowerlimit 浮點數

實際下限。

binsize 浮點數

每個 bin 的寬度。

extrapoints int

加分。

例子

>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> from scipy import stats
>>> rng = np.random.default_rng()
>>> a = np.array([2, 4, 1, 2, 3, 2])
>>> res = stats.relfreq(a, numbins=4)
>>> res.frequency
array([ 0.16666667, 0.5       , 0.16666667,  0.16666667])
>>> np.sum(res.frequency)  # relative frequencies should add up to 1
1.0

創建具有 1000 個隨機值的正態分布

>>> samples = stats.norm.rvs(size=1000, random_state=rng)

計算相對頻率

>>> res = stats.relfreq(samples, numbins=25)

計算 x 的值空間

>>> x = res.lowerlimit + np.linspace(0, res.binsize*res.frequency.size,
...                                  res.frequency.size)

繪製相對頻率直方圖

>>> fig = plt.figure(figsize=(5, 4))
>>> ax = fig.add_subplot(1, 1, 1)
>>> ax.bar(x, res.frequency, width=res.binsize)
>>> ax.set_title('Relative frequency histogram')
>>> ax.set_xlim([x.min(), x.max()])
>>> plt.show()
scipy-stats-relfreq-1.png

相關用法


注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.stats.relfreq。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。