I have a dataset in .csv format as shown:


Where the first column talks about the over all grade:

FAIL - Fail
PASS - Pass class
1 - First class
2 - Second class
D - Distinction

This is followed by marks of each student in 6 subjects.

Is there anyway i can find out performance in which subject makes a difference in overall outcome?

I am using Weka and had used J48 to build a tree.

/* UPDATE */

The summary of J48 classifier is:

=== Summary ===

Correctly Classified Instances       30503               92.5371 %
Incorrectly Classified Instances      2460                7.4629 %
Kappa statistic                          0.902 
Mean absolute error                      0.0332
Root mean squared error                  0.1667
Relative absolute error                 10.8867 %
Root relative squared error             42.7055 %
Total Number of Instances            32963 

Also I discretized the marks data into 10 bins with useEqualFrequency set to true. The summary of J48 now is:

=== Summary ===

Correctly Classified Instances       28457               86.3301 %
Incorrectly Classified Instances      4506               13.6699 %
Kappa statistic                          0.8205
Mean absolute error                      0.0742
Root mean squared error                  0.2085
Relative absolute error                 24.3328 %
Root relative squared error             53.4264 %
Total Number of Instances            32963 
  • 2
    $\begingroup$ And what does your model tell you? $\endgroup$
    – mpiktas
    Nov 17, 2014 at 12:15
  • $\begingroup$ hi mpiktas, pls see the updates in the question. $\endgroup$
    – Anvith
    Nov 17, 2014 at 12:39
  • 1
    $\begingroup$ Would linear modelling (eg using lm in R) not work to find which subject's marks makes a difference in overall outcome? The outcome may be convert to an ordinal variable (e.g. 0-4). $\endgroup$
    – rnso
    Nov 17, 2014 at 17:44
  • $\begingroup$ Read up on how decision trees are built, and what they can tell you... how is the first attribute chosen? $\endgroup$ Nov 18, 2014 at 6:48

1 Answer 1


You seem to have an ordinal response variable, but it is not clear to me (not knowing this grading system) what is the order, but you will know. So one modern way (probably less known when you wrote the quetion 9 years ago) is ordinal regression. Try to peruse the tags , [tag.ordered-logit]. Search this site, many good posts. Some:


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.