доверительный интервал студента t в python

меня интересует использование python для вычисления доверительного интервала от студента t.

Я использую функцию StudentTCI () в Mathematica и теперь должен закодировать ту же функцию в python http://reference.wolfram.com/mathematica/HypothesisTesting/ref/StudentTCI.html

Я не совсем уверен, как построить эту функцию сам, но прежде чем я приступлю к этому, эта функция где-то в python? Как и NumPy? (Я не использовал numpy и моего советника рекомендуется не использовать numpy, если это возможно).

Что бы быть самый простой способ решить эту проблему? Могу ли я скопировать исходный код из StudentTCI () в numpy (если он существует) в мой код в качестве определения функции?

edit: мне нужно будет построить студенческий TCI, используя код python (если это возможно). Установка scipy превратилась в тупик. У меня такая же проблема, как и у всех остальных, и я не могу требовать Scipy для кода, который я распространяю, если это займет это долго настраивал.

кто-нибудь знает, как посмотреть исходный код для алгоритма в версии scipy? Я думаю, я буду рефакторинг его в определение питона.

1 ответов


Я думаю, вы могли бы использовать scipy.статистика.t и interval способ:

In [1]: from scipy.stats import t
In [2]: t.interval(0.95, 10, loc=1, scale=2)  # 95% confidence interval
Out[2]: (-3.4562777039298762, 5.4562777039298762)
In [3]: t.interval(0.99, 10, loc=1, scale=2)  # 99% confidence interval
Out[3]: (-5.338545334351676, 7.338545334351676)

конечно, вы можете сделать свою собственную функцию, если вам нравится. Давайте сделаем так, как в Mathematica:

from scipy.stats import t


def StudentTCI(loc, scale, df, alpha=0.95):
    return t.interval(alpha, df, loc, scale)

print StudentTCI(1, 2, 10)
print StudentTCI(1, 2, 10, 0.99)

результат:

(-3.4562777039298762, 5.4562777039298762)
(-5.338545334351676, 7.338545334351676)