Эквивалент R qt в python - PullRequest
0 голосов
/ 27 мая 2020

У меня есть функция R, которую я пытаюсь преобразовать в python, используя scipy

R Fun c:

lambda <- function(P) log(-log(P))
kt = function(x1, x2, n) suppressWarnings(qt(1 - x1, df = (n -1), ncp = (-sqrt(n) * lambda(x2))))

И вот python эквивалент, который я разработал

python эквивалент R Fun c

import scipy.stats as t
import nump as np
x = lambda P : np.log(-np.log(P))
kt = lambda x1,x2,n:(st.t.ppf(1 - x1, df = (n -1),scale=(-np.sqrt(n) * x(x2))))

Теперь я тестирую обе эти функции с data:

kt(0.05,0.99,15)

Я получаю другой результат в python, чем R.

Я думаю, что в scipy ppf нет параметра ncp, который вызывает эту проблему.

Есть ли какая-нибудь эквивалентная функция python для R qt, которую я могу использовать здесь со всеми параметрами R, такими как df и ncp

1 Ответ

1 голос
/ 27 мая 2020

Вы должны иметь возможность использовать scipy.stats.nct, как показано в документации здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...