在C#中进行T测试

时间:2014-10-08 22:52:28

标签: c# statistics

我正在尝试对某些数据运行T测试。似乎使用Statistic Formula类是一种很好的方法。但我似乎无法让它发挥作用。这是我的代码。

Chart Chart1 = new Chart();
        Collection<string> series1 = new Collection<string>();
        series1.Add("5");
        series1.Add("7");
        series1.Add("9");
        Collection<string> series2 = new Collection<string>();
        series2.Add("1");
        series2.Add("3");
        series2.Add("2");


        TTestResult result = Chart1.DataManipulator.Statistics.TTestPaired(0.2, 0.05, "series1" , "series2");

我一直得到例外:

System.Web.DataVisualization.dll中出现未处理的“System.ArgumentException”类型异常

附加信息:公式数据对象 - 系列集合中不存在输入系列:series1

有人能指出我正确的方向吗?我在这做错了什么?如果有一种更简单的方法,我就可以了。

1 个答案:

答案 0 :(得分:2)

这里的问题是您需要将两个系列添加到图表中,然后将数据添加到系列中。否则,图表无法进行测试,因为它不知道您定义的字符串集合。

试试这个:

Chart chart1 = new Chart();

chart1.Series.Add("series1");
chart1.Series["series1"].Points.AddY(5);
chart1.Series["series1"].Points.AddY(7);
chart1.Series["series1"].Points.AddY(9);

chart1.Series.Add("series2");
chart1.Series["series2"].Points.AddY(1);
chart1.Series["series2"].Points.AddY(3);
chart1.Series["series2"].Points.AddY(2);

TTestResult result = chart1.DataManipulator.Statistics.TTestPaired(0.2, 0.05, "series1", "series2");