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


C# Vector.ToString方法代码示例

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


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

示例1: classify0

      private static string classify0(Vector inX, Matrix dataset, List<string> labels, int k)
      {
         Console.WriteLine("Input");
         Console.WriteLine(inX.ToString());

         Console.WriteLine("Data");
         Console.WriteLine(dataset);

         Console.WriteLine("Labels");
         labels.ForEach(s => Console.Write(s+" "));

         // Create difference matrix with same dimensions as the dataset
         var diffMatrix = new Matrix(dataset.Rows,dataset.Cols);
         for (int i = 0; i < dataset.Rows; i++)
         {
            diffMatrix[i]=inX;
         }

         diffMatrix = diffMatrix - dataset;
         Console.WriteLine("Diff Matrix");
         Console.WriteLine(diffMatrix.ToString());
   
         // Square all the items
         for (int i = 0; i < diffMatrix.Rows; i++)
         {
            var v = diffMatrix[i];
            v.Each((d)=>Math.Pow(d,2.0));
            diffMatrix[i] = v;
         }
         // Sum of each row and then square root
         var sqDistances = diffMatrix.Sum(VectorType.Col);  //Why is this a Column Summation?
         sqDistances.Each(d => Math.Sqrt(d));
         Console.WriteLine("Squared distances");
         Console.WriteLine(sqDistances.ToString());


         // get the sorted indices
         var sortedIndices = Vector.SortOrder(sqDistances).Reverse().ToVector();
         Console.WriteLine("Sorted Indices");
         Console.WriteLine(sortedIndices);

         var classCount = new Dictionary<string, double>();

         // Now compare the first 'k' items that are closest
         for (int i = 0; i < k; i++)
         {
            var votelabel = labels[(int)sortedIndices[i]];
            if (!classCount.ContainsKey(votelabel))
            {
               classCount.Add(votelabel,1.0); 
            }
            else
            {
               classCount[votelabel] += 1;   // Increment count
            }
            
         }
         // Order by the values descending and return the first Key
         var orderedCount = classCount.OrderByDescending(kvp => kvp.Value).ToArray();
         return orderedCount.First().Key;

      }
开发者ID:CapnK,项目名称:MLIA.Net,代码行数:62,代码来源:Program.cs


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