MathNet数字统计直方图

时间:2013-04-19 18:29:32

标签: c# wpf mathdotnet

我正在使用MathNet库来计算一些统计数据,例如:中位数,最小值,最大值。我用这段代码计算了一些直方图数据:

var histogram = new Histogram(data, numberOfBuckets);

铲斗数是什么意思?这是一个可以获得的概率吗?如何将包含桶的histogram的输出处理为绘制直方图?我认为这个输出特别适用于绘制图表,例如在zedgraphhistogram中的桶包含桶的向量,如下所示:[1;1,4]=1

2 个答案:

答案 0 :(得分:1)

numberOfBuckets参数说明应该分割多少个大小相等的间隔。然后直方图计算数据中落入每个桶的数量。

尝试:

        var v = DenseVector.Create(10, i => i+1);
        Console.WriteLine(new Histogram(v, 5));

也许你想要一个自然数的直方图,其中每个桶包含特定数字的出现次数(有些桶可能是空的)?然后将numberOfBuckets设置为max-min + 1。

答案 1 :(得分:0)

直方图类实现了一个索引器,使您可以访问内部存储区。因此,您可以遍历存储桶以提取每个存储桶的统计信息。

Histogram h = new Histogram(myRandomSamples, numBuckets);

//Get data from 5th histogram bucket
double lb = h[5].LowerBound; //get the bucket low bound
double ub = h[5].UpperBound; //get the bucket upper bound
double count = h[5].Count;   //get number of samples in that histogram bucket