
DATAHOME = ../../data/

TRAINDATA = $(DATAHOME)census-income.data

TESTDATA = $(DATAHOME)census-income.test

##########################################################

# Make it all baby!

all : test1 test2 test3 test4 test5 test6 test7 test8

##########################################################

# test 1 
# control test, train plain, test plain, no pruning

test1 :
	java weka.classifiers.j48.J48 -t $(TRAINDATA) -T $(TESTDATA) -U > test-no-pruning.txt

##########################################################

# test 2
# try pruning

test2 : 
	java weka.classifiers.j48.J48 -t $(TRAINDATA) -T $(TESTDATA) > test.txt

##########################################################

# test 3
# try reduced error pruning

test3 : 
	java weka.classifiers.j48.J48 -t $(TRAINDATA) -T $(TESTDATA) -R > test-reduced-error-pruning.txt

##########################################################

# test 4
# try not performing subtree raising

test4 :
	java weka.classifiers.j48.J48 -t $(TRAINDATA) -T $(TESTDATA) -S > test-no-subtree-raising.txt

##########################################################

# test 5
# try requiring 15 instances to create a leaf

test5 :
	java weka.classifiers.j48.J48 -t $(TRAINDATA) -T $(TESTDATA) -M 15 > test-15-instances-per-leaf.txt

##########################################################

# test 6
# try requiring 20 instances to create a leaf

test6 :
	java weka.classifiers.j48.J48 -t $(TRAINDATA) -T $(TESTDATA) -M 20 > test-20-instances-per-leaf.txt

##########################################################

# test 7
# try requiring 25 instances to create a leaf

test7 :
	java weka.classifiers.j48.J48 -t $(TRAINDATA) -T $(TESTDATA) -M 25 > test-25-instances-per-leaf.txt

##########################################################

# test 8
# try requiring 30 instances to create a leaf

test8 :
	java weka.classifiers.j48.J48 -t $(TRAINDATA) -T $(TESTDATA) -M 30 > test-30-instances-per-leaf.txt

##########################################################

## Make sure we have the correct data and test files to work with ##

##########################################################

## Cleaners ##

##########################################################

clean : cleantests cleandata

##########################################################

cleandata :
	rm -f census-income.test
	rm -f census-income.data

##########################################################

cleantests :
	rm -f test.txt
	rm -f test-no-pruning.txt
	rm -f test-reduced-error-pruning.txt
	rm -f test-no-subtree-raising.txt
	rm -f test-15-instances-per-leaf.txt
	rm -f test-20-instances-per-leaf.txt
	rm -f test-25-instances-per-leaf.txt
	rm -f test-30-instances-per-leaf.txt

##########################################################
