ComeçarComece de graça

Contando em grupos

Nos exercícios anteriores, você buscou dados das tabelas e depois resumiu os dataframes resultantes no pandas para criar gráficos. Usando COUNT e GROUP BY em uma consulta SQL, dá para obter esses números resumidos diretamente do banco de dados.

A tabela hpd311calls tem uma coluna, complaint_type, que categoriza os registros de chamadas por tipo de problema, como aquecimento ou encanamento. Para gerar um gráfico do volume de chamadas por tipo de problema, você vai escrever uma consulta SQL que faça COUNT dos registros por tipo de reclamação.

pandas já foi importado como pd, e o mecanismo de banco de dados para data.db já foi criado como engine.

Este exercício faz parte do curso

Ingestão de dados simplificada com pandas

Ver curso

Instruções do exercício

  • Crie uma consulta SQL que obtenha a coluna complaint_type e as contagens de todos os registros de hpd311calls, agrupadas por complaint_type.
  • Crie um dataframe com read_sql() com as contagens de chamadas por tipo de problema, calls_by_issue.
  • Execute a última seção do código para gerar o gráfico com o número de chamadas para cada problema de habitação.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Create query to get call counts by complaint_type
query = """
____ ____, 
     ____(*)
  FROM hpd311calls
  ____ ____;
"""

# Create dataframe of call counts by issue
calls_by_issue = pd.read_sql(____, ____)

# Graph the number of calls for each housing issue
calls_by_issue.plot.barh(x="complaint_type")
plt.show()
Editar e executar o código