internal C45FeatureSetCollection GetFSCFromFile(String filename)
        {
            C45FeatureSetCollection featureSetCollection = new C45FeatureSetCollection();
            C45Schema  schema    = C45Schema.CreateFromFile(filename.Replace(".data".ToString(), ".names".ToString()));
            int        character = 0;
            String     line      = String.Empty;
            FileStream file      = new FileStream(
                filename,
                FileMode.Open);

            while (character >= 0)
            {
                line      = String.Empty;
                character = file.ReadByte();

                while (character != 0x0A &&
                       character > 0)
                {
                    line     += Convert.ToChar(character);
                    character = file.ReadByte();
                }
                featureSetCollection.Add(C45FeatureSet.GetFSFromLine(line, schema));
            }

            return(featureSetCollection);
        }
Exemplo n.º 2
0
        private void CreateColumns()
        {
            try
            {
                this.schema = C45Schema.CreateFromFile(c45Settings.C45SchemaFilename + @".names");
                int index = 0;
                foreach (C45SchemaProperty property in schema.Properties)
                {
                    if (property.IsDiscrete)
                    {
                        DataGridViewComboBoxColumn combo = new DataGridViewComboBoxColumn();
                        combo.Name       = property.Name;
                        combo.HeaderText = property.Name;

                        combo.Items.Add("?".ToString());
                        foreach (String attribute in property.DiscreteAttributes)
                        {
                            combo.Items.Add(attribute);
                        }
                        this.dataGridView.Columns.Add(combo);
                    }
                    else
                    {
                        DataGridViewTextBoxColumn text = new DataGridViewTextBoxColumn();
                        text.Name       = property.Name;
                        text.HeaderText = property.Name;

                        this.dataGridView.Columns.Add(text);
                    }

                    this.dataGridView.Columns[index].Tag = property;
                    index++;
                }

                this.userClassColumn   = index++;
                this.resultClassColumn = index++;
                this.stateColumn       = index;

                AddClassesToGridView(schema.Classes);
                AddResultColumn();
            }
            catch (C45Exception ex)
            {
                MessageBox.Show(ex.GetString());
                CloseToolStripMenuItem_Click(this, new EventArgs());
            }
        }