README Overview This project involves an enhanced elastic net feature selection method and a modified crow search algorithm (EN - ICSA) for the classification of neonatal brain injury using EEG data. The project includes data preprocessing, feature extraction, feature selection, model training, and testing. The workflow is implemented in Python, utilizing various scientific computing libraries. Operating System All experiments were conducted on a system with the following specifications: Operating System: Windows 10 (or the operating system you used, if different) Processor: Intel Core i7-7700 CPU @ 4.20 GHz RAM: 16 GB Development Environment: Jupyter Notebook 3.6.1 Software and Libraries The following software and libraries were used in this study: 1. Python 3.10 The main programming language used for feature extraction, feature selection, and model training/testing. 2. MATLAB EEGLAB Toolbox Used for preprocessing EEG data. This toolbox provides functionalities for EEG signal analysis and data manipulation. 3. Python Libraries NumPy: For numerical computing and handling matrices. Pandas: For data manipulation and handling tabular data. Matplotlib: For data visualization and plotting. Seaborn: For advanced data visualization with enhanced aesthetics. Scikit-learn: Used for feature selection (ElasticNetCV), classification model training, and evaluation. MNE-Features: Utilized for EEG feature extraction and signal processing. SciPy: For scientific computing, including the use of functions like chirp for chaos sequence generation. QEEG Analysis: For quantitative EEG (QEEG) data analysis and feature extraction. KNeighborsClassifier: From Scikit-learn for implementing K-Nearest Neighbors classification. 4. Data The EEG data used in this study should be in CSV format and processed using the EEGLAB toolbox. The data files should be placed in the appropriate directory specified in the code (E:\train_data.csv). Installation To replicate the experiments, ensure you have the following installed: Python 3.10: Install the latest version of Python from the official Python website. MATLAB with EEGLAB Toolbox: Install MATLAB and add the EEGLAB toolbox for EEG data processing. Visit EEGLAB's official website for installation instructions. Required Python Libraries: Install the required libraries via pip: pip install numpy pandas matplotlib seaborn scikit-learn scipy mne Usage To run the experiments: Preprocess the Data: Use MATLAB EEGLAB toolbox to preprocess your EEG data. Run Feature Extraction: Use the MNE-Features library and QEEG Analysis in Python for extracting relevant features from the preprocessed EEG data. Execute the Feature Selection and Classification Code: Run the provided Python script in a Jupyter Notebook environment to perform feature selection, classification model training, and evaluation. Ensure all the data files and the necessary libraries are set up correctly in your environment before executing the scripts. Contact For any questions or issues, please contact: Tao Yue (Co-first Author and Submitting Author) Ling Li (First Author) Hui Wu (Corresponding Author) Yanping Zhao (Co-Corresponding Author)