本文整理汇总了C#中MathNet.Numerics.Distributions.ChiSquared类的典型用法代码示例。如果您正苦于以下问题:C# ChiSquared类的具体用法?C# ChiSquared怎么用?C# ChiSquared使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ChiSquared类属于MathNet.Numerics.Distributions命名空间,在下文中一共展示了ChiSquared类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。
示例1: ValidateMaximum
public void ValidateMaximum()
{
var n = new ChiSquared(1.0);
Assert.AreEqual(Double.PositiveInfinity, n.Maximum);
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例2: ValidateDensityLn
public void ValidateDensityLn(double dof, double x, double expected)
{
var chiSquared = new ChiSquared(dof);
Assert.That(chiSquared.DensityLn(x), Is.EqualTo(expected).Within(13));
Assert.That(ChiSquared.PDFLn(dof, x), Is.EqualTo(expected).Within(13));
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:6,代码来源:ChiSquareTests.cs
示例3: ValidateMedian
public void ValidateMedian(double dof)
{
var n = new ChiSquared(dof);
Assert.AreEqual(dof - (2.0 / 3.0), n.Median);
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例4: ValidateMinimum
public void ValidateMinimum()
{
var n = new ChiSquared(1.0);
Assert.AreEqual(0.0, n.Minimum);
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例5: ValidateToString
public void ValidateToString()
{
var n = new ChiSquared(1.0);
Assert.AreEqual("ChiSquared(k = 1)", n.ToString());
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例6: SetDofFailsWithNonPositiveDoF
public void SetDofFailsWithNonPositiveDoF(double dof)
{
var n = new ChiSquared(1.0);
Assert.Throws<ArgumentOutOfRangeException>(() => n.DegreesOfFreedom = dof);
}
开发者ID:nakamoton,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例7: Run
/// <summary>
/// Run example
/// </summary>
public void Run()
{
// 1. Get 10 random samples of f(x) = (x * x) / 2 using continuous uniform distribution on [-10, 10]
var uniform = new ContinuousUniform(-10, 10);
var result = Generate.RandomMap(10, uniform, Function);
Console.WriteLine(@" 1. Get 10 random samples of f(x) = (x * x) / 2 using continuous uniform distribution on [-10, 10]");
for (var i = 0; i < result.Length; i++)
{
Console.Write(result[i].ToString("N") + @" ");
}
Console.WriteLine();
Console.WriteLine();
// 2. Get 10 random samples of f(x) = (x * x) / 2 using Exponential(1) distribution and retrieve sample points
var exponential = new Exponential(1);
double[] samplePoints = Generate.Random(10, exponential);
result = Generate.Map(samplePoints, Function);
Console.WriteLine(@"2. Get 10 random samples of f(x) = (x * x) / 2 using Exponential(1) distribution and retrieve sample points");
Console.Write(@"Points: ");
for (var i = 0; i < samplePoints.Length; i++)
{
Console.Write(samplePoints[i].ToString("N") + @" ");
}
Console.WriteLine();
Console.Write(@"Values: ");
for (var i = 0; i < result.Length; i++)
{
Console.Write(result[i].ToString("N") + @" ");
}
Console.WriteLine();
Console.WriteLine();
// 3. Get 10 random samples of f(x, y) = (x * y) / 2 using ChiSquare(10) distribution
var chiSquare = new ChiSquared(10);
result = Generate.RandomMap2(10, chiSquare, TwoDomainFunction);
Console.WriteLine(@" 3. Get 10 random samples of f(x, y) = (x * y) / 2 using ChiSquare(10) distribution");
for (var i = 0; i < result.Length; i++)
{
Console.Write(result[i].ToString("N") + @" ");
}
Console.WriteLine();
}
开发者ID:Jungwon,项目名称:mathnet-numerics,代码行数:49,代码来源:Random.cs
示例8: ValidateInverseCumulativeDistribution
public void ValidateInverseCumulativeDistribution(double dof, double x, double expected)
{
var chiSquared = new ChiSquared(dof);
Assert.That(chiSquared.InverseCumulativeDistribution(x), Is.EqualTo(expected).Within(1e-14));
Assert.That(ChiSquared.InvCDF(dof, x), Is.EqualTo(expected).Within(1e-14));
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:6,代码来源:ChiSquareTests.cs
示例9: ValidateDensity
public void ValidateDensity(double dof, double x)
{
var n = new ChiSquared(dof);
double expected = (Math.Pow(x, (dof / 2.0) - 1.0) * Math.Exp(-x / 2.0)) / (Math.Pow(2.0, dof / 2.0) * SpecialFunctions.Gamma(dof / 2.0));
Assert.AreEqual(expected, n.Density(x));
Assert.AreEqual(expected, ChiSquared.PDF(dof, x));
}
开发者ID:smoothdeveloper,项目名称:mathnet-numerics,代码行数:7,代码来源:ChiSquareTests.cs
示例10: ValidateDensityLn
public void ValidateDensityLn(double dof, double x)
{
var n = new ChiSquared(dof);
double expected = (-x / 2.0) + (((dof / 2.0) - 1.0) * Math.Log(x)) - ((dof / 2.0) * Math.Log(2)) - SpecialFunctions.GammaLn(dof / 2.0);
Assert.AreEqual(expected, n.DensityLn(x));
Assert.AreEqual(expected, ChiSquared.PDFLn(dof, x));
}
开发者ID:smoothdeveloper,项目名称:mathnet-numerics,代码行数:7,代码来源:ChiSquareTests.cs
示例11: ValidateCumulativeDistribution
public void ValidateCumulativeDistribution(double dof, double x)
{
var n = new ChiSquared(dof);
double expected = SpecialFunctions.GammaLowerIncomplete(dof / 2.0, x / 2.0) / SpecialFunctions.Gamma(dof / 2.0);
Assert.AreEqual(expected, n.CumulativeDistribution(x));
Assert.AreEqual(expected, ChiSquared.CDF(dof, x));
}
开发者ID:smoothdeveloper,项目名称:mathnet-numerics,代码行数:7,代码来源:ChiSquareTests.cs
示例12: SetDofFailsWithNonPositiveDoF
public void SetDofFailsWithNonPositiveDoF(double dof)
{
var n = new ChiSquared(1.0);
Assert.That(() => n.DegreesOfFreedom = dof, Throws.ArgumentException);
}
开发者ID:smoothdeveloper,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例13: Run
/// <summary>
/// Run example
/// </summary>
/// <seealso cref="http://en.wikipedia.org/wiki/Pearson_product-moment_correlation_coefficient">Pearson product-moment correlation coefficient</seealso>
public void Run()
{
// 1. Initialize the new instance of the ChiSquare distribution class with parameter dof = 5.
var chiSquare = new ChiSquared(5);
Console.WriteLine(@"1. Initialize the new instance of the ChiSquare distribution class with parameter DegreesOfFreedom = {0}", chiSquare.DegreesOfFreedom);
Console.WriteLine(@"{0} distributuion properties:", chiSquare);
Console.WriteLine(@"{0} - Largest element", chiSquare.Maximum.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Smallest element", chiSquare.Minimum.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Mean", chiSquare.Mean.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Median", chiSquare.Median.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Mode", chiSquare.Mode.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Variance", chiSquare.Variance.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Standard deviation", chiSquare.StdDev.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Skewness", chiSquare.Skewness.ToString(" #0.00000;-#0.00000"));
Console.WriteLine();
// 2. Generate 1000 samples of the ChiSquare(5) distribution
Console.WriteLine(@"2. Generate 1000 samples of the ChiSquare(5) distribution");
var data = new double[1000];
for (var i = 0; i < data.Length; i++)
{
data[i] = chiSquare.Sample();
}
// 3. Get basic statistics on set of generated data using extention methods
Console.WriteLine(@"3. Get basic statistics on set of generated data using extention methods");
Console.WriteLine(@"{0} - Largest element", data.Maximum().ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Smallest element", data.Minimum().ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Mean", data.Mean().ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Median", data.Median().ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Biased population variance", data.PopulationVariance().ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Variance", data.Variance().ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Standard deviation", data.StandardDeviation().ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Biased sample standard deviation", data.PopulationStandardDeviation().ToString(" #0.00000;-#0.00000"));
Console.WriteLine();
// 4. Compute the basic statistics of data set using DescriptiveStatistics class
Console.WriteLine(@"4. Compute the basic statistics of data set using DescriptiveStatistics class");
var descriptiveStatistics = new DescriptiveStatistics(data);
Console.WriteLine(@"{0} - Kurtosis", descriptiveStatistics.Kurtosis.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Largest element", descriptiveStatistics.Maximum.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Smallest element", descriptiveStatistics.Minimum.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Mean", descriptiveStatistics.Mean.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Variance", descriptiveStatistics.Variance.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Standard deviation", descriptiveStatistics.StandardDeviation.ToString(" #0.00000;-#0.00000"));
Console.WriteLine(@"{0} - Skewness", descriptiveStatistics.Skewness.ToString(" #0.00000;-#0.00000"));
Console.WriteLine();
// Generate 1000 samples of the ChiSquare(2.5) distribution
var chiSquareB = new ChiSquared(2);
var dataB = new double[1000];
for (var i = 0; i < data.Length; i++)
{
dataB[i] = chiSquareB.Sample();
}
// 5. Correlation coefficient between 1000 samples of ChiSquare(5) and ChiSquare(2.5)
Console.WriteLine(@"5. Correlation coefficient between 1000 samples of ChiSquare(5) and ChiSquare(2.5) is {0}", Correlation.Pearson(data, dataB).ToString("N04"));
Console.WriteLine(@"6. Ranked correlation coefficient between 1000 samples of ChiSquare(5) and ChiSquare(2.5) is {0}", Correlation.Spearman(data, dataB).ToString("N04"));
Console.WriteLine();
// 6. Correlation coefficient between 1000 samples of f(x) = x * 2 and f(x) = x * x
data = Generate.LinearSpacedMap(1000, 0, 100, x => x * 2);
dataB = Generate.LinearSpacedMap(1000, 0, 100, x => x * x);
Console.WriteLine(@"7. Correlation coefficient between 1000 samples of f(x) = x * 2 and f(x) = x * x is {0}", Correlation.Pearson(data, dataB).ToString("N04"));
Console.WriteLine(@"8. Ranked correlation coefficient between 1000 samples of f(x) = x * 2 and f(x) = x * x is {0}", Correlation.Spearman(data, dataB).ToString("N04"));
Console.WriteLine();
}
开发者ID:Jungwon,项目名称:mathnet-numerics,代码行数:72,代码来源:Statistics.cs
示例14: CanSample
public void CanSample()
{
var n = new ChiSquared(1.0);
n.Sample();
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例15: ValidateVariance
public void ValidateVariance(double dof)
{
var n = new ChiSquared(dof);
Assert.AreEqual(2 * dof, n.Variance);
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例16: CanSampleSequence
public void CanSampleSequence()
{
var n = new ChiSquared(1.0);
var ied = n.Samples();
GC.KeepAlive(ied.Take(5).ToArray());
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:6,代码来源:ChiSquareTests.cs
示例17: ValidateStdDev
public void ValidateStdDev(double dof)
{
var n = new ChiSquared(dof);
Assert.AreEqual(Math.Sqrt(n.Variance), n.StdDev);
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例18: CanCreateChiSquare
public void CanCreateChiSquare(double dof)
{
var n = new ChiSquared(dof);
Assert.AreEqual(dof, n.DegreesOfFreedom);
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例19: ValidateMode
public void ValidateMode(double dof)
{
var n = new ChiSquared(dof);
Assert.AreEqual(dof - 2, n.Mode);
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
示例20: ValidateMean
public void ValidateMean(double dof)
{
var n = new ChiSquared(dof);
Assert.AreEqual(dof, n.Mean);
}
开发者ID:ActivePHOENiX,项目名称:mathnet-numerics,代码行数:5,代码来源:ChiSquareTests.cs
注:本文中的MathNet.Numerics.Distributions.ChiSquared类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论