scipy.special.nctdtr#
- scipy.special.nctdtr(df, nc, t, out=None) = <ufunc 'nctdtr'>#
非中心 t 分佈的累積分布函數。
- 參數:
- dfarray_like
分佈的自由度。應在 (0, 無限大) 範圍內。
- ncarray_like
非中心性參數。
- tarray_like
分位數,即積分上限。
- outndarray, optional
函數結果的選用輸出陣列
- 回傳值:
- cdfscalar or ndarray
計算出的 CDF。如果所有輸入都是純量,則回傳值將為浮點數。否則,它將會是一個陣列。
另請參閱
註解
此函數使用 Boost Math C++ 函式庫 [1] 計算非中心 t 分佈的 CDF。
請注意,
nctdtr
的引數順序與scipy.stats.nct
的類似cdf
方法不同:t 是nctdtr
的最後一個參數,但卻是scipy.stats.nct.cdf
的第一個參數。參考文獻
[1]Boost 開發者。「Boost C++ 函式庫」。https://boost.dev.org.tw/。
範例
>>> import numpy as np >>> from scipy import special >>> from scipy import stats >>> import matplotlib.pyplot as plt
繪製非中心 t 分佈的 CDF,對於 nc=0。與 scipy.stats 的 t 分佈比較
>>> x = np.linspace(-5, 5, num=500) >>> df = 3 >>> nct_stats = stats.t.cdf(x, df) >>> nct_special = special.nctdtr(df, 0, x)
>>> fig = plt.figure() >>> ax = fig.add_subplot(111) >>> ax.plot(x, nct_stats, 'b-', lw=3) >>> ax.plot(x, nct_special, 'r-') >>> plt.show()