def plot_class_histograms()

in cost-based-ml/cost_based_ml.py [0:0]


def plot_class_histograms(score_n_true_label):
	class_1_scores = [score for (score, true_label) in score_n_true_label if true_label == 1]
	class_0_scores = [score for (score, true_label) in score_n_true_label if true_label == 0]

        class_1_score_histogram, bins       = np.histogram(class_1_scores, bins=100, range=(0.,1.))
        class_0_score_histogram, _dont_care = np.histogram(class_0_scores, bins=100, range=(0.,1.))
        mean = (np.mean(class_1_score_histogram) + np.mean(class_0_score_histogram)) / 2.0

	plt.figure()
	plt.plot(bins[:-1], class_1_score_histogram, c='blue', label='class 1')
	plt.plot(bins[:-1], class_0_score_histogram, c='green', label='class 0')
	plt.axis([0, 1, 0, mean*3])
	plt.legend()
	plt.title('Distribution of scores for each class')
	plt.xlabel('score')
	plt.ylabel('test samples')
	plt.draw()