def media_desvio_causas_acidentes(self): """ Calculates the standard deviation of the causes of the accidents @brief Local variable: query - SQL instruction to query the number of accidents by cause. medias_list - Receives a list with the media of each cause. desvios_padroes_list - Receives a list with the standard deviation of each cause. media_desvio_causas_acidentes_list - Receives a list with the media and the standard deviation of each cause. @return A list of the media and standard deviation of accidents causes. """ query = """SELECT causa, quantidade_ocorrencias, ano FROM estatisticas_causa ORDER BY causa, ano ; """ data_frame = self.executa_query(query, get_data_frame=True) medias_list = data_frame.groupby( 'causa' )['quantidade_ocorrencias'].mean() desvios_padroes_list = data_frame.groupby( 'causa' )['quantidade_ocorrencias'].std() media_desvio_causas_acidentes_list = [] for i in range(0, len(medias_list)): media_desvio_causas_acidentes = MediaDesvioAcidentes() media_desvio_causas_acidentes.media = medias_list[i] media_desvio_causas_acidentes.desvio = desvios_padroes_list[i] media_desvio_causas_acidentes_list.append( media_desvio_causas_acidentes ) return media_desvio_causas_acidentes_list
def media_desvio_tipos_acidentes(self): """ Calculates the average of the accidents types @brief Local variables: query - SQL instruction to query the statistics per year. data_frame - Receives the query result in a predetermined format. medias_list- List of averages. desvios_padroes_list - List of standard deviations. list_mean_type_accident - Lists the average of the standard deviation for the different accidents type. @return List of the standard deviation's averages. """ query = """SELECT tipo, quantidade_ocorrencias, ano FROM estatisticas_tipo ORDER BY tipo, ano ; """ data_frame = self.executa_query(query, get_data_frame=True) medias_list = data_frame.groupby( 'tipo' )['quantidade_ocorrencias'].mean() desvios_padroes_list = data_frame.groupby( 'tipo' )['quantidade_ocorrencias'].std() list_mean_type_accident = [] for i in range(0, len(medias_list)): media_desvio_tipos_acidentes = MediaDesvioAcidentes() media_desvio_tipos_acidentes.media = medias_list[i] media_desvio_tipos_acidentes.desvio = desvios_padroes_list[i] list_mean_type_accident.append( media_desvio_tipos_acidentes ) return list_mean_type_accident