public AddInstances(DataTable newDataSet, DataFile newDataSetDataFile) { InitializeComponent(); dataSet = newDataSet; dataSetDataFile = newDataSetDataFile; // Verificar si el tipo de archivo es CSV (null) o DATA. if (dataSetDataFile != null) { TextBoxDefaultValue.Text = dataSetDataFile.MissingValue; TextBoxDefaultValue.Enabled = false; } }
public DeleteAttribute(DataTable newDataSet, DataFile newDataSetDataFile) { InitializeComponent(); dataSet = newDataSet; dataSetDataFile = newDataSetDataFile; List <string> attributes = new List <string>(); for (int i = 0; i < dataSet.Columns.Count; i++) { attributes.Add(dataSet.Columns[i].Caption); } ListBoxAttributes.DataSource = attributes; }
public CorrectTypographicErrors(DataTable newDataSet, DataFile newDataSetDataFile, int newAttributeIndex, List <string> newAttributeValues, List <string> newInOfDomainValues, List <int> newOutOfDomainValuesIndices) { InitializeComponent(); // Inicializar variables. dataSet = newDataSet; dataSetDataFile = newDataSetDataFile; attributeIndex = newAttributeIndex; attributeValues = newAttributeValues; inOfDomainValues = newInOfDomainValues; outOfDomainValuesIndices = newOutOfDomainValuesIndices; currentoutOfDomainValuesIndex = 0; // Inicializar las herramientas. UpdateTools(); }
public SaveFileAsDATA(DataTable newDataSet, DataFile newDataSetDataFile) { InitializeComponent(); dataSet = newDataSet; DataSetDataFile = newDataSetDataFile; if (DataSetDataFile != null) { TextBoxGeneralInformation.Text = DataSetDataFile.GeneralInformation; TextBoxRelation.Text = DataSetDataFile.Relation; TextBoxMissingValue.Text = DataSetDataFile.MissingValue; } InitializeDataGridViewAttributes(); }
public void UpdateContent(DataFile newDataSetDataFile) { dataSetDataFile = newDataSetDataFile; attributes.Clear(); foreach (DataColumn attribute in dataSet.Columns) { attributes.Add(attribute.Caption); } if (attributes.Count != 0) { GetAttributeStatistics(); } }
public CorrectOutliers(DataTable newDataSet, DataFile newDataSetDataFile, int newAttributeIndex, List <string> newAttributeValues, List <int> newPossibleOutliersIndices, List <int> newOutliersIndices) { InitializeComponent(); // Inicializar las variables. dataSet = newDataSet; dataSetDataFile = newDataSetDataFile; attributeIndex = newAttributeIndex; attributeValues = newAttributeValues; possibleOutliersIndices = newPossibleOutliersIndices; outliersIndices = newOutliersIndices; ChangesMade = false; // Inicializar las herramientas. UpdateTools(); }
private void ButtonSaveSample_Click(object sender, EventArgs e) { // Definir el nombre del archivo por defecto como "Muestra". SaveFileDialogSample.FileName = "Muestra"; // Mostrar el "SaveFileDialog" para guardar la muestra. if (SaveFileDialogSample.ShowDialog() == DialogResult.OK) { // Se seleccionó un tipo y se dio clic en "Aceptar". // Decidir que acciones realizar en base al tipo del archivo seleccionado. switch ((DataEntry.SaveFileDialogFilter)SaveFileDialogSample.FilterIndex) { case DataEntry.SaveFileDialogFilter.CSV: // Archivo CSV. // Guardar la muestra como archivo CSV. File.WriteAllText(SaveFileDialogSample.FileName, SaveFileAsCSV()); break; case DataEntry.SaveFileDialogFilter.DATA: // Archivo DATA. // Crear un nuevo "DataFile" utilizando el "DataFile" actual pero con los datos de la muestra. DataFile dataSetSampleDataFile = new DataFile(dataSetDataFile.GeneralInformation, dataSetDataFile.Relation, dataSetDataFile.Attributes, dataSetDataFile.MissingValue, dataSetSample); // Llenar los campos del archivo DATA. using (SaveFileAsDATA saveFileAsDATAForm = new SaveFileAsDATA(dataSet, dataSetSampleDataFile)) { // Mostrar el "Form" con los atributos del archivo DATA. if (saveFileAsDATAForm.ShowDialog() == DialogResult.OK) { // Guardar la muestra como archivo DATA. File.WriteAllText(SaveFileDialogSample.FileName, saveFileAsDATAForm.DataSetDataFile.Save()); } else { // En caso de cancelar el guardado, retornar. return; } } break; } } }
public void UpdateContent(DataFile newDataSetDataFile) { // Asignar el "DataFile" global al local. dataSetDataFile = newDataSetDataFile; // Limpiar las opciones de los "ComboBox" de los atributos. attributeNumberOneOptions.Clear(); attributeNumberTwoOptions.Clear(); // Agregar las opciones a los "ComboBox" de los atributos. foreach (DataColumn attribute in dataSet.Columns) { attributeNumberOneOptions.Add(attribute.Caption); attributeNumberTwoOptions.Add(attribute.Caption); } // Obtener la correlación de los dos atributos seleccionados. GetAttributeCorrelation(); }
public AddAttribute(DataTable newDataSet, DataFile newDataSetDataFile) { InitializeComponent(); dataSet = newDataSet; dataSetDataFile = newDataSetDataFile; // Verificar si el tipo de archivo es CSV (null) o DATA. if (dataSetDataFile != null) { TextBoxDefaultValue.Text = dataSetDataFile.MissingValue; TextBoxDefaultValue.Enabled = false; } else { // Desactivar las opciones innecesarias para una archivo CSV. ComboBoxDataType.Enabled = false; TextBoxDomain.Enabled = false; } }
public EditAttribute(DataTable newDataSet, DataFile newDataSetDataFile) { InitializeComponent(); dataSet = newDataSet; dataSetDataFile = newDataSetDataFile; List <string> attributes = new List <string>(); for (int i = 0; i < dataSet.Columns.Count; i++) { attributes.Add(dataSet.Columns[i].Caption); } ListBoxAttributes.DataSource = attributes; if (dataSetDataFile == null) { ComboBoxDataType.Enabled = false; TextBoxDomain.Text = "N/A"; TextBoxDomain.Enabled = false; } }
private void ButtonSave_Click(object sender, EventArgs e) { if (TextBoxGeneralInformation.Text == "") { MessageBox.Show("La información general se encuentra vacía.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (TextBoxRelation.Text == "") { MessageBox.Show("La relación se encuentra vacía.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (DataSetDataFile != null) { DataSetDataFile.GeneralInformation = TextBoxGeneralInformation.Text; DataSetDataFile.Relation = TextBoxRelation.Text; for (int i = 0; i < DataGridViewAttributes.RowCount; i++) { if (DataGridViewAttributes[(int)ColumnIndex.Name, i].Value == null || DataGridViewAttributes[(int)ColumnIndex.Name, i].Value.ToString() == "") { MessageBox.Show("El nombre del atributo #" + (i + 1) + " se encuentra vacío.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (DataGridViewAttributes[(int)ColumnIndex.Domain, i].Value == null || DataGridViewAttributes[(int)ColumnIndex.Domain, i].Value.ToString() == "") { MessageBox.Show("El dominio del atributo #" + (i + 1) + " se encuentra vacío.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } DataFileAttribute attribute = DataSetDataFile.Attributes[i]; DataGridViewComboBoxCell attributeDataType = (DataGridViewComboBoxCell)DataGridViewAttributes[(int)ColumnIndex.DataType, i]; try { attribute.Edit(DataGridViewAttributes[(int)ColumnIndex.Name, i].Value.ToString(), attributeDataType.Items.IndexOf(attributeDataType.Value), DataGridViewAttributes[(int)ColumnIndex.Domain, i].Value.ToString()); } catch (ArgumentException) { MessageBox.Show("El dominio (expresión regular) del atributo #" + (i + 1) + " es inválido.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } if (TextBoxMissingValue.Text == "") { MessageBox.Show("El valor faltante se encuentra vacío.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } DataSetDataFile.MissingValue = TextBoxMissingValue.Text; } else { List <DataFileAttribute> attributes = new List <DataFileAttribute>(); for (int i = 0; i < DataGridViewAttributes.RowCount; i++) { if (DataGridViewAttributes[(int)ColumnIndex.Name, i].Value == null || DataGridViewAttributes[(int)ColumnIndex.Name, i].Value.ToString() == "") { MessageBox.Show("El nombre del atributo #" + (i + 1) + " se encuentra vacío.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (DataGridViewAttributes[(int)ColumnIndex.Domain, i].Value == null || DataGridViewAttributes[(int)ColumnIndex.Domain, i].Value.ToString() == "") { MessageBox.Show("El dominio del atributo #" + (i + 1) + " se encuentra vacío.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } DataGridViewComboBoxCell attributeDataType = (DataGridViewComboBoxCell)DataGridViewAttributes[(int)ColumnIndex.DataType, i]; try { attributes.Add(new DataFileAttribute(DataGridViewAttributes[(int)ColumnIndex.Name, i].Value.ToString(), attributeDataType.Items.IndexOf(attributeDataType.Value), DataGridViewAttributes[(int)ColumnIndex.Domain, i].Value.ToString())); } catch (ArgumentException) { MessageBox.Show("El dominio (expresión regular) del atributo #" + (i + 1) + " es inválido.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } DataSetDataFile = new DataFile(TextBoxGeneralInformation.Text, TextBoxRelation.Text, attributes, TextBoxMissingValue.Text, dataSet); } DialogResult = DialogResult.OK; }
private void LoadFile() { string fileExtension = Path.GetExtension(OpenFileDialogDataSet.FileName); // Se limpia el archivo DATA. DataSetDataFile = null; // Se limpia la DataTable local. dataSet.Columns.Clear(); dataSet.Rows.Clear(); // Se limpia el DataGridView. DataGridViewDataSet.Columns.Clear(); DataGridViewDataSet.DataSource = null; // Se resetea la variable Bool. ChangesMade = false; // Se verifica el tipo del archivo a leer. if (fileExtension == ".csv") { // Leer el archivo CSV. ReadCSVFile(); } else { // Leer el archivo DATA. ReadDATAFile(); } // Cargar en el DataGridView el contenido del archivo leido con la BindingSource. bindingDataSet.DataSource = dataSet; DataGridViewDataSet.DataSource = bindingDataSet; // Agregar al DataGridView las columnas con el número de instancia y con el botón de eliminar. DataGridViewButtonColumn ColumnDeleteInstanceButton = new DataGridViewButtonColumn() { Name = "Eliminar Instancia", Text = "Eliminar", UseColumnTextForButtonValue = true }; DataGridViewColumn ColumnInstance = new DataGridViewColumn() { HeaderText = "Instancia", ReadOnly = true, CellTemplate = new DataGridViewTextBoxCell() }; DataGridViewDataSet.Columns.Insert((int)ColumnIndex.DeleteInstanceButton, ColumnDeleteInstanceButton); DataGridViewDataSet.Columns.Insert((int)ColumnIndex.Instance, ColumnInstance); // Colocar el numero de instancia en la columna de "Instancia" del DataGridView FillInstanceColumn(); // Obtener y mostrar la información del conjunto de datos. LabelDatasetNameValue.Text = Path.GetFileNameWithoutExtension(OpenFileDialogDataSet.FileName); LabelDataSetInstanceQuantityValue.Text = dataSet.Rows.Count.ToString(); LabelDataSetAttributeQuantityValue.Text = dataSet.Columns.Count.ToString(); // Verificar el tipo del archivo. if (DataSetDataFile != null) { // Archivo DATA. // Asignar contenido único de archivos DATA. TextBoxGeneralInformation.Text = DataSetDataFile.GeneralInformation; LabelRelationValue.Text = DataSetDataFile.Relation; // Encontrar valores faltantes y valores fuera del dominio para colorear las celdas. FindMissingAndOutOfDomainValues(); } else { // Archivo CSV. // Limpiar contenido único de archivos DATA. TextBoxGeneralInformation.Text = "N/A"; LabelRelationValue.Text = "N/A"; // Encontrar valores faltantes para colorear las celdas. FindMissingValues(); } }
public void UpdateContent(DataFile newDataSetDataFile) { dataSetDataFile = newDataSetDataFile; UpdateTabPages(); }