C# Excel公式T.INV使用C计算错误#
在Excel中=T.INV(0.9,5)返回值“1.475884” 现在我正在使用C#中的WorksheetFunctionTINV(0.9,5)。但这给了我0.1321751752的结果 所以,在C#TINV中,结果与excel的值相差太大C# Excel公式T.INV使用C计算错误#,c#,excel,excel-formula,worksheet-function,C#,Excel,Excel Formula,Worksheet Function,在Excel中=T.INV(0.9,5)返回值“1.475884” 现在我正在使用C#中的WorksheetFunctionTINV(0.9,5)。但这给了我0.1321751752的结果 所以,在C#TINV中,结果与excel的值相差太大 Microsoft.Office.Interop.Excel.Application xl = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Exce
Microsoft.Office.Interop.Excel.Application xl = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.WorksheetFunction wsf = xl.WorksheetFunction;
double result = wsf.TInv(0.9, 5);
使用另一个NuGet DLL也发现与前一个DLL相同的值:
var chart = new System.Web.UI.DataVisualization.Charting.Chart();
double resultTest = chart.DataManipulator.Statistics.TDistribution(.9, 5, true);
因此,我需要与Excel工作表中的**T.Inv**
函数相同的值
如何在c#中获得相同的T.INV值
有人能帮我得到同样的结果吗?这段代码返回学生t分布的左尾和双尾倒数
static void Main(string[] args)
{
double value = 0.9;
int degree = 5;
var chart = new System.Web.UI.DataVisualization.Charting.Chart();
double resultTest = chart.DataManipulator.Statistics.InverseTDistribution(value, degree);
Console.WriteLine(resultTest);
//left-tailed
double result = alglib.invstudenttdistribution(degree, value);
Console.WriteLine(result);
}
另外,我使用了此处提供的InvstudentDistribution函数
请在代码块中插入所有代码。感谢您的帮助,但我只对匹配T.INV感兴趣。因此,我可以在asp.net中获得T.INV函数的任何其他代码或方法,从而得到1.475884作为我的答案。