T-Test和PValue- Math.Net Numerics类

时间:2017-05-12 14:08:02

标签: c# statistics p-value t-test

是否有方法从StudentT类中获取ttest-value和P-Value。我正在尝试从此库中计算这些值:https://numerics.mathdotnet.com/api/MathNet.Numerics.Distributions/StudentT.htm

excel等效功能是T-Test。但我在math.net数字excel函数中没有这个方法。以下链接显示了所有excel方法: https://numerics.mathdotnet.com/api/MathNet.Numerics/ExcelFunctions.htm

任何从上述库中完成此任务的指示都会有很大的帮助。

谢谢...

2 个答案:

答案 0 :(得分:1)

我不知道如何在Math.Net中这样做,但我知道如何在Meta.Numerics中做到这一点:

        Sample sample1 = new Sample(1.0, 2.0, 3.0, 4.0);
        Sample sample2 = new Sample(3.0, 4.0, 5.0, 6.0);
        TestResult tTest = Sample.StudentTTest(sample1, sample2);
        Console.WriteLine("t = {0}", tTest.Statistic);
        Console.WriteLine("P = {0} ({1})", tTest.Probability, tTest.Type);

我理解你是否对改变数学图书馆不感兴趣,但由于你的问题已经有一段时间没有回答,我想我会参与其中。

答案 1 :(得分:0)

以下是如何使用 MathNet.Numerics 库集执行左尾 t 检验的方法。

假设您在数组中有一些数据,并且您已经计算了所有必需的初步统计数据,如下所示。

    int n = 5;    //size of sample
    double hypotheziedMean = 50.0;   
    double sampleMean = 50.03;
    double sampleSD = 1.5;    //sample standard deviation (n-1)

    double stdErr = sampleSD / Math.Sqrt(n);    //standard error of the mean
    double t = (sampleMean - hypotheziedMean) / stdErr;   //convert to a standard mean of 0 and SD of 1

    StudentT st = new StudentT(0, 1, n-1); //create a standard StudentT object with n-1 DOF

    double pVal = st.CumulativeDistribution(t);  //left tail pval