Encog.App.Analyst.Wizard.AnalystWizard.ExpandTimeSlices C# (CSharp) Method

ExpandTimeSlices() private method

Expand the time-series fields.
private ExpandTimeSlices ( ) : void
return void
        private void ExpandTimeSlices()
        {
            IList<AnalystField> oldList = _script.Normalize.NormalizedFields;
            IList<AnalystField> newList = new List<AnalystField>();


            // generate the inputs foreach the new list
            foreach (AnalystField field  in  oldList)
            {
                if (!field.Ignored)
                {
                    if (_includeTargetField || field.Input)
                    {
                        for (int i = 0; i < _lagWindowSize; i++)
                        {
                            var newField = new AnalystField(field) {TimeSlice = -i, Output = false};
                            newList.Add(newField);
                        }
                    }
                }
                else
                {
                    newList.Add(field);
                }
            }


            // generate the outputs foreach the new list
            foreach (AnalystField field  in  oldList)
            {
                if (!field.Ignored)
                {
                    if (field.Output)
                    {
                        for (int i = 1; i <= _leadWindowSize; i++)
                        {
                            var newField = new AnalystField(field) {TimeSlice = i};
                            newList.Add(newField);
                        }
                    }
                }
            }


            // generate the ignores foreach the new list
            foreach (AnalystField field  in  oldList)
            {
                if (field.Ignored)
                {
                    newList.Add(field);
                }
            }

            // swap back in
            oldList.Clear();
            foreach (AnalystField item in oldList)
            {
                oldList.Add(item);
            }
        }