Question

I am porting over some code from Microsoft Excel to C#. The Excel expression uses the TINV function. Is there an equivalent function in C# or .NET? If not, what C# code is necessary to reimplement this function?

Était-ce utile?

La solution

If you are using .NET 4.0 you can leverage the Chart class found in the System.Web.DataVisualization assembly (you will also need to add System.Web). E.G:

var chart = new System.Web.UI.DataVisualization.Charting.Chart();
double result = chart.DataManipulator.Statistics.InverseTDistribution(.05, 15);

//2.131449546

Documentation:

http://msdn.microsoft.com/en-us/library/system.web.ui.datavisualization.charting.statisticformula.inversetdistribution(v=vs.110).aspx

Autres conseils

Necromancing.

You can look the exact way up in Math.NET (MIT/X11).

double result  = MathNet.Numerics.ExcelFunctions.TInv (probability, degFreedom);

which is the same as:

double result  = -StudentT.InvCDF(0d, 1d, degFreedom, probability/2);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top