ILSpyを使用System.Windows.Forms.DataVisualization.dll
して関数System.Windows.Forms.DataVisualization.Charting.StatisticFormula.Mean()
を確認しようとしましたが、コンテンツをレンダリングできないようです。
私は興味があります。この関数は、次のような独自の平均関数を単純に記述するよりも、平均を生成するのに効率的ですか。
public static double Mean(this IEnumerable<double> values)
{
double sum = 0;
int count = 0;
foreach(double d in values)
{
sum += d;
count++;
}
return sum / count;
}
300万人以上の会員を相手にする可能性があります。
[アップデート]
テスト中、LINQIEnumerable.Average()
は私の古いデュアルコアワークステーションで非常に効率的で、List<int>
0.0011471秒で87000のメンバーを処理しているようです。これは、私が思っていたよりもはるかに効率的です。
var s3 = Stopwatch.StartNew();
double average1 = DaySampleValues.Average();
s3.Stop();
TimeSpan totaltime = s3.Elapsed; // = 0.0011471 seconds