## 2 Research Methodology  
### The Dataset and its Preprocessing  
Our dataset contains records of 357 students who were admitted to the CCSIT at IAU from Fall 2011 to Fall 2013 (included), and thus includes three batches of students. The institutional review board at IAU reviewed and approved using the data anonymously (application approved on 19 December 2018; IRB Number: 2018-09-304). Two programs of CCSIT are included in this study, namely Computer Science (CS) and Computer Information Systems (CIS). During the first three years, all the students of the College follow the same plan. In their first year, they attend the Preparatory program where they take mainly intensive English Language courses. In their second and third years, called General Years, the students take courses fundamental to computer and information sciences. At the end of their third year, students select either CS or CIS program based on their interests. Student records populated from IAU learning management system contain features of three different nature: the demographic features, the pre-college features, and the college records including enrollment information and college performance. **The demographic features** consist of gender and nationality (see Figure 1). The female gender dominates the CCSIT as the College is one of the top ranking colleges in the Eastern Region of Saudi Arabia for females. As expected, the dominant nationality is Saudi Arabian with over 85%. The other significant countries represented are Yemen (YEM), Egypt (EGY), Jordan (JOR), and Syria (SYR). There are nine other countries represented -- Morocco, Pakistan, Palestine, Ethiopia, India, Iraq, USA, Bahrain, and Sudan --each with less than 0.5% grouped in the OTHR class. The demographic features being nominal, we need to convert them into numerical features to use them in machine learning models. We used three different approaches for this purpose. 1. The first approach is \"_dummification_\". For a nominal feature \(X\) with \(n\) categories, \(n\) new features \(\{X_{1},\ldots,X_{n}\}\), called _dummy_ features, are created so that if a sample belongs to the \(i^{\text{th}}\) category, then \(X_{i}=1\) and \(X_{j}=0\) for all \(1\leq j\leq n\) and \(i\
eq j\). 2. The second approach is a derivative of the _dummification_ approach. There is a redundancy between the new features \(\{X_{1},\ldots,X_{n}\}\). If we know the values of any \(n-1\) features, then we can find out the value the missing one. This redundancy may reduce the performance of a machine learning model. Therefore, in this variant of the dummification method, we drop one of the new features, the first one to be exact. We can summarize the dummification approach and its variant as substituting a nominal variable by a binary vector of size \(n\) and \(n-1\), respectively. 3. In case the dataset has too many nominal features with too many categories each and limited number of samples, the dummification of all the nominal features can reduce the performance of the machine learning algorithm as with the new features the number of total features can increase drastically. To avoid such complications, one can label a category of the nominal feature by its probability. This way, the total number of features do not change. For instance, in our dataset, this approach would have replaced the Female class by 0.728 and the Male class by 0.272. Figure 1: Bar charts showing the demographic information of the dataset. We experimented with all three approaches. We did not see a major difference in the performance metrics when Logistic Regression or Random Forest machine learning methods are used. However we observed a significant decline in performance when Naive Bayes method is used with either the redundant or the non-redundant dummification which can be explained by the introduction of the new features that are not probabilistically independent. Because of this performance drop, we adopted the third approach in all our experiments. **The pre-college features** consists of scores obtained from three national exams.