def test_college_details(self): ''' The function should return either a single row or no rows ''' self.valid_row = handlers.college_details(self.dataframe, self.valid_university_name, self.valid_branch_name) self.invalid_row1 = handlers.college_details(self.dataframe, self.valid_university_name, self.invalid_branch_name) self.invalid_row2 = handlers.college_details(self.dataframe, self.invalid_university_name, self.invalid_branch_name) self.invalid_row3 = handlers.college_details(self.dataframe, self.invalid_university_name, self.valid_branch_name) self.assertEquals(self.valid_row.shape[0], 1) self.assertEquals(self.invalid_row1.shape[0], 0) self.assertEquals(self.invalid_row2.shape[0], 0) self.assertEquals(self.invalid_row3.shape[0], 0)
def university_crime_explorer(dataframe): '''Handles the features of first GUI''' GUI.start_user_interface(dataframe) university_name = GUI.get_uni() branch_name = GUI.get_branch() print "Details about %s (%s) is being generated. Please wait..." % ( university_name, branch_name) college_instance = handlers.college_details(dataframe, university_name, branch_name) college_obj = coll.College(college_instance, crimes_obj) crime_per_student_without_average = handlers.all_crimes_per_student_over_years( college_obj, crimes_obj) # Question 1 crime_per_student_with_average = handlers.all_crimes_per_student_over_years( college_obj, crimes_obj, average=True) # Question 2 crimes_per_student_by_category = handlers.average_crimes_per_student_by_category( dataframe, 'State', crimes_obj) # Question 3 pltparam = plotting.pltParam() answers_obj = plots.Answers(crimes_obj, college_obj, pltparam, crime_per_student_without_average, crime_per_student_with_average, crimes_per_student_by_category) answers_obj.visualize_answer1() answers_obj.pieChart(crime_per_student_with_average)
def test_all_crimes_per_student_over_years(self): '''The function tests the valid responses of the crime per student function''' self.college_instance = handlers.college_details(self.dataframe, self.valid_university_name, self.valid_branch_name) self.college_obj = coll.College(self.college_instance, self.crimes_object) self.test_data1 = handlers.all_crimes_per_student_over_years(self.college_obj, self.crimes_object, True, False) self.assertEquals(len(self.test_data1['MURD']), 3)
def test_college_details(self): ''' The function should return either a single row or no rows ''' self.valid_row = handlers.college_details(self.dataframe, self.valid_university_name, self.valid_branch_name) self.invalid_row1 = handlers.college_details( self.dataframe, self.valid_university_name, self.invalid_branch_name) self.invalid_row2 = handlers.college_details( self.dataframe, self.invalid_university_name, self.invalid_branch_name) self.invalid_row3 = handlers.college_details( self.dataframe, self.invalid_university_name, self.valid_branch_name) self.assertEquals(self.valid_row.shape[0], 1) self.assertEquals(self.invalid_row1.shape[0], 0) self.assertEquals(self.invalid_row2.shape[0], 0) self.assertEquals(self.invalid_row3.shape[0], 0)
def test_all_crimes_per_student_over_years(self): '''The function tests the valid responses of the crime per student function''' self.college_instance = handlers.college_details( self.dataframe, self.valid_university_name, self.valid_branch_name) self.college_obj = coll.College(self.college_instance, self.crimes_object) self.test_data1 = handlers.all_crimes_per_student_over_years( self.college_obj, self.crimes_object, True, False) self.assertEquals(len(self.test_data1['MURD']), 3)
def university_crime_explorer(dataframe, crimes_obj, university_name, branch_name, GUI_Required): '''Gives out the crime details related to a university + branch''' if GUI_Required: GUI.start_user_interface(dataframe) university_name = GUI.get_uni() branch_name = GUI.get_branch() print "Details about %s (%s) is being generated. Please wait..." % (university_name, branch_name) college_instance = handlers.college_details(dataframe, university_name, branch_name) college_obj = coll.College(college_instance, crimes_obj) multibar_plot, pie_chart = get_university_crime_details_and_plot(dataframe, college_obj, crimes_obj) return university_name, branch_name, multibar_plot, pie_chart
def university_crime_explorer(dataframe, crimes_obj, university_name, branch_name, GUI_Required): '''Gives out the crime details related to a university + branch''' if GUI_Required: GUI.start_user_interface(dataframe) university_name = GUI.get_uni() branch_name = GUI.get_branch() print "Details about %s (%s) is being generated. Please wait..." % ( university_name, branch_name) college_instance = handlers.college_details(dataframe, university_name, branch_name) college_obj = coll.College(college_instance, crimes_obj) multibar_plot, pie_chart = get_university_crime_details_and_plot( dataframe, college_obj, crimes_obj) return university_name, branch_name, multibar_plot, pie_chart
def university_crime_explorer(dataframe): '''Handles the features of first GUI''' GUI.start_user_interface(dataframe) university_name = GUI.get_uni() branch_name = GUI.get_branch() print "Details about %s (%s) is being generated. Please wait..." % (university_name, branch_name) college_instance = handlers.college_details(dataframe, university_name, branch_name) college_obj = coll.College(college_instance, crimes_obj) crime_per_student_without_average = handlers.all_crimes_per_student_over_years(college_obj, crimes_obj) # Question 1 crime_per_student_with_average = handlers.all_crimes_per_student_over_years(college_obj, crimes_obj, average=True) # Question 2 crimes_per_student_by_category = handlers.average_crimes_per_student_by_category(dataframe, 'State', crimes_obj) # Question 3 pltparam = plotting.pltParam() answers_obj = plots.Answers(crimes_obj, college_obj, pltparam, crime_per_student_without_average, crime_per_student_with_average, crimes_per_student_by_category) answers_obj.visualize_answer1() answers_obj.pieChart(crime_per_student_with_average)
import numpy as np import pandas as pd import matplotlib.pyplot as plt import handlers import college if __name__ == '__main__': '''Handling the functionalities''' dataframe, crimes_obj = handlers.data_initialization("data/oncampuscrime101112_cleaned.csv") coll =college.College(pd.Series({"a":3},crimes_obj)) university_name = "University of Alabama in Huntsville" branch_name = "Main_Campus" college_instance = handlers.college_details(dataframe, university_name, branch_name) college_obj = coll.College(college_instance, crimes_obj) crime_per_student = handlers.all_crimes_per_student_over_years("On Campus", "Crime", college_instance, crimes_obj) answers_obj = plots.Answers(crimes_obj, college_obj, pltparam, crime_per_student_without_average, crime_per_student_with_average, crimes_per_student_by_category) d = handlers.average_crimes_per_student_by_category(dataframe, 'State' ,crimes_obj, overall_average = True) answers_obj.simpleBarChart(d,"MA")