Beispiel #1
0
        private void Load(List <string> fileNames)
        {
            this.Total = fileNames.Count;

            FilesLoaded = new List <string>();

            foreach (string fileName in fileNames)
            {
                try {
                    if (this._isCancelationPending == true)
                    {
                        break;
                    }

                    ++this.Current;
                    this.KeyCode = GetKeyCode(fileName);

                    Trace trace = new Trace(this.KeyCode);

                    trace.ClassificationActual    = ActualClassificationFactory.Create(fileName);
                    trace.ClassificationPredicted = PredictedClassificationFactory.Create(fileName);

                    trace.Adopt(Adopter);

                    trace.Load();
                    Add(trace);

                    TraceAggregate.Load(trace);

                    FilesLoaded.Add(fileName);
                } catch (Exception ex) {
                    if (ex.Message.Contains(TwEnvironment.TwExemplars))
                    {
                        string message = "This classifier requires the file " + TwEnvironment.TwExemplars + ", which is not installed by default due to its size.";
                        message += " (" + ex.Message + ")";
                        MessageBox.Show(message);
                        return;
                    }
                    else
                    {
                        throw new Exception(ex.Message + " KeyCode = " + this.KeyCode);
                    }
                }
            }

            TraceAggregate.CalculateConfusionMatrix();
        }
 public IEnumerable <TraceAggregate> GroupByGrainAndSilo()
 {
     return(history.GroupBy(x => (x.Grain, x.SiloAddress)).Select(group => {
         var result = new TraceAggregate
         {
             SiloAddress = group.Key.SiloAddress,
             Grain = group.Key.Grain
         };
         foreach (var record in group)
         {
             result.Count += record.Count;
             result.ExceptionCount += record.ExceptionCount;
             result.ElapsedTime += record.ElapsedTime;
         }
         return result;
     }));
 }