Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正在执行计算,但结果仅为NaN public double-calculateStdErrorEst() { 双see=0; 双剩余平方=0; CultureInfo culture=新的CultureInfo(“美国”); List residualTotal=新列表(); 尝试 { 对于(int i=0;i_C# - Fatal编程技术网

C# 正在执行计算,但结果仅为NaN public double-calculateStdErrorEst() { 双see=0; 双剩余平方=0; CultureInfo culture=新的CultureInfo(“美国”); List residualTotal=新列表(); 尝试 { 对于(int i=0;i

C# 正在执行计算,但结果仅为NaN public double-calculateStdErrorEst() { 双see=0; 双剩余平方=0; CultureInfo culture=新的CultureInfo(“美国”); List residualTotal=新列表(); 尝试 { 对于(int i=0;i,c#,C#,正如您所看到的,我正在尝试向下舍入这些值,以便使数字保持较小,以便使用它们,但无论我做了什么尝试,我总是得到NaN,这是唯一的结果。我在这里遗漏了什么吗?您可能试图从负值中获取平方根,这会导致Math.Sqrt返回double.NaN。在调用Math.Sqrt之前使用Math.Abs: public double calculateStdErrorEst() { double see = 0; double residualSquare = 0; CultureInfo

正如您所看到的,我正在尝试向下舍入这些值,以便使数字保持较小,以便使用它们,但无论我做了什么尝试,我总是得到
NaN
,这是唯一的结果。我在这里遗漏了什么吗?

您可能试图从负值中获取平方根,这会导致
Math.Sqrt
返回
double.NaN
。在调用
Math.Sqrt
之前使用
Math.Abs

public double calculateStdErrorEst()
{
    double see = 0;
    double residualSquare = 0;
    CultureInfo culture = new CultureInfo("en-US");
    List<double> residualTotal = new List<double>();

    try
    {
        for (int i = 0; i < stockPctReturns.Count; i++)
        {
            // square root of all sums of predicted - actual or market - stock
            residualSquare = Math.Sqrt(Convert.ToDouble((marketPctReturns.ElementAt(i) - stockPctReturns.ElementAt(i)), culture));
            residualTotal.Add(Math.Round(residualSquare, 2, MidpointRounding.AwayFromZero));
        }

        see = residualTotal.Sum() / (stockPctReturns.Count - 2);
        see = Math.Sqrt(see);
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }

    return Math.Round(see, 2, MidpointRounding.AwayFromZero);
}

您可能试图从负值中获取平方根,这会导致
Math.Sqrt
返回
double.NaN
。在调用
Math.Sqrt
之前使用
Math.Abs

public double calculateStdErrorEst()
{
    double see = 0;
    double residualSquare = 0;
    CultureInfo culture = new CultureInfo("en-US");
    List<double> residualTotal = new List<double>();

    try
    {
        for (int i = 0; i < stockPctReturns.Count; i++)
        {
            // square root of all sums of predicted - actual or market - stock
            residualSquare = Math.Sqrt(Convert.ToDouble((marketPctReturns.ElementAt(i) - stockPctReturns.ElementAt(i)), culture));
            residualTotal.Add(Math.Round(residualSquare, 2, MidpointRounding.AwayFromZero));
        }

        see = residualTotal.Sum() / (stockPctReturns.Count - 2);
        see = Math.Sqrt(see);
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }

    return Math.Round(see, 2, MidpointRounding.AwayFromZero);
}

什么是StockPCtretures,计数是多少?最佳猜测:您试图从负值中获取
Math.Sqrt
Math.Sqrt
方法返回
NaN
,表示负数。这是一个与前一天相比的百分比变化列表,总共大约有2100项。我相信负数可能是导致它的原因,但是没有办法解决这个问题吗?
我正在尝试将值向下舍入,这样我就可以保持较小的数字来处理它们
。。。所以1.0比1.4更可行?什么是StockpCtretures,计数是多少?最佳猜测:您试图从负值中获取
Math.Sqrt
Math.Sqrt
方法返回负数的
NaN
。这是一个与前一天相比变化百分比的列表,总共大约有2100项。我相信负数可能是导致它的原因,但是没有办法解决这个问题吗?
我正在尝试将值向下舍入,这样我就可以保持较小的数字来处理它们
。。。那么1.0比1.4更可行?