Esempio n. 1
0
def main():
    loadData()
    data = getData()

    NBresults = list()
    SVMresults = list()
    for x in xrange(0, 10):
        (train_set, test_set) = splitData(data)

        classifier = getClassifier(train_set, 'NaiveBayes')
        NBresults.append(classify(classifier, test_set))

        classifier = getClassifier(train_set, 'SVM')
        SVMresults.append(classify(classifier, test_set))

    print '\nNaive Bayes Classifier'
    printTable(NBresults)

    print '\nSVM'
    printTable(SVMresults)
def main():
	loadData();
	data = getData();

	NBresults = list()
	SVMresults = list()
	for x in xrange(0,10):
		(train_set,test_set) = splitData(data)
		
		classifier = getClassifier(train_set,'NaiveBayes')
		NBresults.append(classify(classifier,test_set))

		classifier = getClassifier(train_set,'SVM')
		SVMresults.append(classify(classifier,test_set))
	
	print '\nNaive Bayes Classifier'
	printTable(NBresults)

	print '\nSVM'
	printTable(SVMresults)
			newX[ row, 5 ] = 3
		else:
			newX[ row, 5 ] = 4

	return X

''' Fetching Data '''
my_list = classifier.readFile( 'car_evals.csv' )
X, Y = classifier.getLabel( my_list, 'unacc' )
X = convertFeatures( X )
X = classifier.One_Hot_Encoding( X )
print "Car Evaluation Dataset"

''' Splitting data '''
print "\nTraining Size = 80%\n"
Xtrain, Xtest, Ytrain, Ytest = classifier.splitData( X, Y, 0.4 )

''' Decision Tree Classifier '''
val_err, train_err, max_depth = classifier.K_Fold_crossValidation_Decision_Tree( Xtrain, Ytrain )
test_err = classifier.decision_tree( Xtrain, Ytrain, Xtest, Ytest, depth = max_depth )
print "Decision Tree Classifier\n"
print "Validation Error = ", val_err
print "Training Error = ", train_err
print "Testing Error = ", test_err
print "Optimal Depth = ", max_depth
print "\n"

''' K Nearest Neighbor '''
val_err, train_err, opt_K = classifier.K_Fold_crossValidation_KNN( Xtrain, Ytrain )
test_err = classifier.KNN( Xtrain, Ytrain, Xtest, Ytest, K = opt_K )
print "K Nearest Neighbor Classifier\n"