This is a Naive Bayes classifier I built without the help of any packages (except 'math') - even pandas. It reads a csv file, trains the model and predicts the class of instances. It also outputs accuracy and error rate of the classifier and information gain of each attribute in the dataset.
My code written in a Jupyter Notebook is here.