当前位置: 首页>>代码示例>>C#>>正文


C# Normal.Samples方法代码示例

本文整理汇总了C#中MathNet.Numerics.Distributions.Normal.Samples方法的典型用法代码示例。如果您正苦于以下问题:C# Normal.Samples方法的具体用法?C# Normal.Samples怎么用?C# Normal.Samples使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在MathNet.Numerics.Distributions.Normal的用法示例。


在下文中一共展示了Normal.Samples方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: TestData

        public static IEnumerable<float> TestData()
        {
            var g = new Normal(0.0, 1.0);
            var randy = new MersenneTwister();

            g.RandomSource = randy;
            var dbls = new double[100000];
            g.Samples(dbls);
            return dbls.Select(d => (float) d);
        }
开发者ID:tp-nscan,项目名称:HopAlong,代码行数:10,代码来源:HIst1DVmD.cs

示例2: NormalityTestAlgorithmTest

        public void NormalityTestAlgorithmTest()
        {
            int sampleSize = 100;
            int numberOfMonteCarloTests = 5;
            double result = 0;
            NormalityTest.NormalityTestFunc normalityTestFunc = NormalityTest.JaqueBeraTest;

            // normal distribution
            Console.WriteLine("normal var");
            for (int i = 0; i < numberOfMonteCarloTests; i++)
            {
                var distribution = new Normal(50, 1);
                distribution.RandomSource = new Random(DateTime.Now.Millisecond * i);
                var normalSamples = distribution.Samples().Take(sampleSize);

                double[] reallIsNormalSamples = normalSamples.ToArray();

                result = normalityTestFunc(reallIsNormalSamples);
                Console.WriteLine("reallIsNormalSamples_" + i + ": " + result);
            }

            Console.WriteLine();

            // random distribution.
            Console.WriteLine("rand var");
            Random rnd = new Random();
            double[] randomArray = new double[sampleSize];
            for (int i = 0; i < numberOfMonteCarloTests; i++)
            {
                for (int j = 0; j < sampleSize; j++)
                {
                    randomArray[j] = rnd.Next(1, 100);
                }

                result = normalityTestFunc(randomArray);
                Console.WriteLine("randomArray_" + i + ": " + result);
            }

            Console.WriteLine();

            // Uniform distribution
            Console.WriteLine("rand var");
            var uniformSamples = new Normal(100, 0).Samples().Take(sampleSize);

            double[] uniformSamplesRandomVar = uniformSamples.ToArray();

            result = normalityTestFunc(uniformSamplesRandomVar);
            Console.WriteLine("uniformSamples: " + result);
        }
开发者ID:PNNL-Comp-Mass-Spec,项目名称:IMS-Informed-Library,代码行数:49,代码来源:InternalTests.cs

示例3: CanEstimateParameters

        public void CanEstimateParameters(double mean, double stddev)
        {
            var original = new Normal(mean, stddev, new Random(100));
            var estimated = Normal.Estimate(original.Samples().Take(10000));

            AssertHelpers.AlmostEqualRelative(mean, estimated.Mean, 1);
            AssertHelpers.AlmostEqualRelative(stddev, estimated.StdDev, 1);
        }
开发者ID:larzw,项目名称:mathnet-numerics,代码行数:8,代码来源:NormalTests.cs

示例4: CanSampleSequence

 public void CanSampleSequence()
 {
     var n = new Normal();
     var ied = n.Samples();
     GC.KeepAlive(ied.Take(5).ToArray());
 }
开发者ID:larzw,项目名称:mathnet-numerics,代码行数:6,代码来源:NormalTests.cs

示例5: StabilityMeanVariance

        public void StabilityMeanVariance()
        {
            // Test around 10^9, potential stability issues
            var gaussian = new Normal(1e+9, 2, new MersenneTwister(100));

            AssertHelpers.AlmostEqualRelative(1e+9, Statistics.Mean(gaussian.Samples().Take(10000)), 10);
            AssertHelpers.AlmostEqualRelative(4d, Statistics.Variance(gaussian.Samples().Take(10000)), 0);
            AssertHelpers.AlmostEqualRelative(2d, Statistics.StandardDeviation(gaussian.Samples().Take(10000)), 1);
            AssertHelpers.AlmostEqualRelative(1e+9, Statistics.RootMeanSquare(gaussian.Samples().Take(10000)), 10);

            AssertHelpers.AlmostEqualRelative(1e+9, ArrayStatistics.Mean(gaussian.Samples().Take(10000).ToArray()), 10);
            AssertHelpers.AlmostEqualRelative(4d, ArrayStatistics.Variance(gaussian.Samples().Take(10000).ToArray()), 0);
            AssertHelpers.AlmostEqualRelative(2d, ArrayStatistics.StandardDeviation(gaussian.Samples().Take(10000).ToArray()), 1);
            AssertHelpers.AlmostEqualRelative(1e+9, ArrayStatistics.RootMeanSquare(gaussian.Samples().Take(10000).ToArray()), 10);

            AssertHelpers.AlmostEqualRelative(1e+9, StreamingStatistics.Mean(gaussian.Samples().Take(10000)), 10);
            AssertHelpers.AlmostEqualRelative(4d, StreamingStatistics.Variance(gaussian.Samples().Take(10000)), 0);
            AssertHelpers.AlmostEqualRelative(2d, StreamingStatistics.StandardDeviation(gaussian.Samples().Take(10000)), 1);
            AssertHelpers.AlmostEqualRelative(1e+9, StreamingStatistics.RootMeanSquare(gaussian.Samples().Take(10000)), 10);

            AssertHelpers.AlmostEqualRelative(1e+9, new RunningStatistics(gaussian.Samples().Take(10000)).Mean, 10);
            AssertHelpers.AlmostEqualRelative(4d, new RunningStatistics(gaussian.Samples().Take(10000)).Variance, 0);
            AssertHelpers.AlmostEqualRelative(2d, new RunningStatistics(gaussian.Samples().Take(10000)).StandardDeviation, 1);
        }
开发者ID:ulatekh,项目名称:mathnet-numerics,代码行数:24,代码来源:StatisticsTests.cs

示例6: GenerateNoisePath

        private static double[] GenerateNoisePath(int simulationSteps, int mean, double noiseVariance)
        {
            var standardNormal = new Normal(mean, noiseVariance);

            return standardNormal.Samples().Take(simulationSteps).ToArray();
        }
开发者ID:preyen,项目名称:MarketSimulator,代码行数:6,代码来源:Program.cs

示例7: CanSampleSequence

 public void CanSampleSequence()
 {
     var n = new Normal();
     var ied = n.Samples();
     var e = ied.Take(5).ToArray();
 }
开发者ID:BovykinMaxim,项目名称:mathnet-numerics,代码行数:6,代码来源:NormalTests.cs

示例8: Randn

 public static double[] Randn(int n, double mu = 0.0, double sigma = 1.0)
 {
     Normal d = new Normal(mu, sigma);
     double[] ret = d.Samples().Take(n).ToArray();
     return ret;
 }
开发者ID:PisalPrasad123,项目名称:CrystalBox,代码行数:6,代码来源:NP.cs


注:本文中的MathNet.Numerics.Distributions.Normal.Samples方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。