Результат InverseTDistribution немного отличается от результата TINV () в Excel. - PullRequest
0 голосов
/ 07 мая 2020

Я просмотрел этот связанный вопрос и этот связанный вопрос , однако они не касаются моей конкретной проблемы. Оба они обращаются к значительно большим расхождениям.

То, что я вижу с помощью функции TINV() в Excel, отличается незначительно , на 0,25–0,40%, от того, что я вижу из StatisticFormula.InverseTDistribution(), но этого достаточно, чтобы беспокоить.

Мой тест:

    private static void Test()
    {
        Chart chart = new Chart();  // needs System.Web.DataVisualization Reference
        StatisticFormula f = chart.DataManipulator.Statistics;

        //double probability = 0.05;
        //int firstDegreeOfFreedom = 7725;
        //int secondDegreeOfFreedom = 323;

        double probability = 0.15;
        int firstDegreeOfFreedom = 8888;
        int secondDegreeOfFreedom = 2222;

        double inverseT = f.InverseTDistribution(probability, firstDegreeOfFreedom + secondDegreeOfFreedom);

        Console.WriteLine("Inverse T is " + inverseT);
    }

Для первого набора значений я получаю 1,96790 в C# и 1,96026 в Excel. Для второго набора значений я получаю 1,44323 в C# и 1,43963 в Excel.

Моя версия. NET Framework - 4.5.2

Мой вопрос: моя реализация верный? Я делаю неверное предположение? Если мой код неверен, что мне нужно изменить в моем коде C#, чтобы получить правильный ответ?

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