scipy.special.binom#

scipy.special.binom(x, y, выход=None) = 'binom'>#

Биномиальный коэффициент, рассматриваемый как функция двух вещественных переменных.

Для вещественных аргументов биномиальный коэффициент определяется как

\[\binom{x}{y} = \frac{\Gamma(x + 1)}{\Gamma(y + 1)\Gamma(x - y + 1)} = \frac{1}{(x + 1)\mathrm{B}(x - y + 1, y + 1)}\]

Где \(\Gamma\) является гамма-функцией (gamma) и \(\mathrm{B}\) является бета-функцией (beta) [1].

Параметры:
x, y: array_like

Вещественные аргументы для \(\binom{x}{y}\).

выходndarray, необязательно

Необязательный выходной массив для значений функции

Возвращает:
скаляр или ndarray

Значение биномиального коэффициента.

Смотрите также

comb

Количество сочетаний из N по k.

Примечания

Гамма-функция имеет полюса в неположительных целых числах и стремится либо к положительной, либо к отрицательной бесконечности в зависимости от направления на вещественной оси, с которого приближаются к полюсу. При рассмотрении как функции двух вещественных переменных, \(\binom{x}{y}\) поэтому не определена, когда x является отрицательным целым числом. binom возвращает nan когда x является отрицательным целым числом. Это так даже когда x является отрицательным целым числом и y целое число, в отличие от обычного соглашения для определения \(\binom{n}{k}\) когда он рассматривается как функция двух целочисленных переменных.

Ссылки

Примеры

Следующие примеры иллюстрируют способы, которыми binom отличается от функции comb.

>>> from scipy.special import binom, comb

Когда exact=False и x и y оба положительны, comb вызовы binom внутренне.

>>> x, y = 3, 2
>>> (binom(x, y), comb(x, y), comb(x, y, exact=True))
(3.0, 3.0, 3)

Для больших значений, comb с exact=True больше не согласуется с binom.

>>> x, y = 43, 23
>>> (binom(x, y), comb(x, y), comb(x, y, exact=True))
(960566918219.9999, 960566918219.9999, 960566918220)

binom возвращает nan когда x является отрицательным целым числом, но в остальном определена для отрицательных аргументов. comb возвращает 0 всякий раз, когда один из x или y отрицательное или x меньше чем y.

>>> x, y = -3, 2
>>> (binom(x, y), comb(x, y))
(nan, 0.0)
>>> x, y = -3.1, 2.2
>>> (binom(x, y), comb(x, y))
(18.714147876804432, 0.0)
>>> x, y = 2.2, 3.1
>>> (binom(x, y), comb(x, y))
(0.037399983365134115, 0.0)