/// <summary> /// Copies the specified source. /// </summary> /// <param name="source">The source.</param> /// <param name="target">The target.</param> /// <param name="progressDelegate">The progress delegate.</param> /// <remarks>Documented by Dev08, 2009-02-06</remarks> public static void Copy(IStatistics source, IStatistics target, CopyToProgress progressDelegate) { try { foreach (IStatistic statistic in source) { target.Add(statistic); } } catch (Exception ex) { Trace.WriteLine(ex.ToString(), "StatisticsHelper.Copy()"); } }
TimeSpan AddRandom(IStatistics statistics, long count) { var rand = new Random(); var watch = new Stopwatch(); while (0 < count--) { var value = rand.NextDouble(); watch.Start(); statistics.Add(value); watch.Stop(); } return(watch.Elapsed); }
public void StandardDeviationPredefinedValuesTest2() { var statistics = new[] { 1d, 3, 4 }.Statistics(); Assert.AreEqual(3, statistics.Count); Assert.IsTrue(statistics.Mean.NearlyEquals(2.7, 0.02)); Assert.IsTrue(statistics.StandardDeviation.NearlyEquals(1.24722, 0.00005)); Assert.IsTrue(statistics.SampleStandardDeviation.NearlyEquals(1.52753, 0.00005)); IStatistics statistics2 = new Statistics(); statistics2.Add(1); IStatistics statistics3 = new Statistics(); statistics3.Add(3); statistics2.Add(statistics3); statistics3 = new Statistics(); statistics3.Add(4); IStatistics statistics4 = statistics3.Clone(); statistics4.Add(statistics2); Assert.IsTrue(statistics4.NearlyEquals(statistics)); statistics2.Add(statistics3); Assert.IsTrue(statistics.NearlyEquals(statistics2)); }