Ignorar navegação

Chicago Safety Data

Chicago 311 Service Requests Public Safety Streets Pot Holes Lights Garbage Sanitation Complaints

As solicitações de serviço ao 311 da cidade de Chicago, incluindo reclamações históricas sobre o código de saneamento, buracos relatados e problemas com a iluminação das ruas

Todas as reclamações abertas sobre o código de saneamento feitas ao 311 e todas as solicitações concluídas desde 1º de janeiro de 2011. O Departamento de Vias Urbanas e Saneamento investiga e corrige as violações do código de saneamento denunciadas em Chicago. Os residentes podem solicitar serviços para violações como lixeiras muito cheias e lixo nas ruas. Às vezes, o 311 recebe reclamações duplicadas sobre o código de saneamento. As solicitações rotuladas como duplicatas estão na mesma área geográfica que a solicitação anterior e foram inseridas no sistema CSR (Solicitação de Atendimento ao Cliente) do 311 aproximadamente no mesmo horário. Reclamações duplicadas são rotuladas como tal no campo de status, como “Aberto – Dup.” ou “Concluído – Dup.”.

O CDOT (Departamento de Transporte de Chicago) monitora o serviço de tapa-buracos em mais de 6 mil quilômetros de vias arteriais e residenciais de Chicago. O CDOT recebe relatórios sobre os buracos por meio do call center do 311 e usa um mapeamento computadorizado e um sistema de acompanhamento para identificar os locais de buracos e agendar as equipes de maneira eficiente. Uma chamada ao 311 pode gerar vários reparos de buracos. Quando uma equipe chega para reparar um buraco informado pelo 311, ela tampa todos os outros buracos do quarteirão. Os reparos de buracos geralmente são concluídos sete dias após a primeira denúncia ao 311. As condições climáticas, especialmente temperaturas geladas e chuvas, influenciam a duração do reparo. Em dias de clima bom e sem chuva, as equipes conseguem tampar vários buracos. Se uma solicitação anterior já tiver sido aberta para tapa-buracos em quatro endereços, seu status será definido como “Duplicado (Aberto)”. Por exemplo, se houver um CSR para N Western, 6535 e uma nova solicitação for recebida para o N Western, 6531 (que fica a quatro casas do CSR original), a nova solicitação receberá o status de “Duplicado (Aberto)”. Quando a rua for reparada, o status no CSR será “Concluído” para a solicitação original e “Duplicado (Fechado)” para as solicitações duplicadas. Uma solicitação de serviço também recebe o status de “Concluído” quando o endereço relatado é inspecionado, mas não há buracos ou eles já foram tampados. Se for encontrado outro problema na rua, como “desmoronamento de asfalto” ou “corte errado do prestador de serviço”, ele será direcionado ao departamento ou prestador de serviço adequado.

Todos os relatos abertos de “Iluminação de via urbana – Inativa” (uma queda de três ou mais luzes) feitos ao 311 e todas as solicitações concluídas desde 1º de janeiro de 2011. O CDOT (Departamento de Transporte de Chicago) monitora aproximadamente 250 mil luzes de rua que iluminam vias arteriais e residenciais na cidade. O CDOT realiza reparos e substituições de lâmpadas em resposta aos relatos dos residentes de falta de luz na rua. Sempre que o CDOT recebe um relato de “Inatividade”, o eletricista alocado para fazer o reparo verifica todas as luzes do circuito (cada circuito tem de 8 a 16 luzes) para se certificar de que todas estão funcionando corretamente. Se uma segunda solicitação para as luzes do mesmo circuito for feita dentro de quatro dias úteis da solicitação original, a solicitação mais recente receberá automaticamente o status de “Duplicado (Aberto)”. Como o eletricista do CDOT verificará todas as luzes do circuito para conferir se todas estão funcionando, todos os endereços “Duplicado (Aberto)” serão automaticamente observados e reparados. Após o reparo das luzes da rua, o status no CSR será “Concluído” para a solicitação original e “Duplicado (Fechado)” para as solicitações duplicadas. Uma solicitação de serviço também recebe o status de “Concluído” quando as luzes relatadas são inspecionadas, mas estão funcionando; quando a solicitação de serviço é para um endereço que não existe; ou quando as luzes são mantidas por um prestador de serviço. Os dados são atualizados diariamente.

Volume e retenção

Este conjunto de dados está armazenado no formato Parquet. É atualizado diariamente e contém cerca de 1 milhão de linhas (80 MB) no total desde 2018.

Este conjunto de dados contém registros históricos acumulados de 2011 a 2018. Você pode usar as configurações de parâmetro no nosso SDK para buscar dados em um intervalo de tempo específico.

Local de armazenamento

Este conjunto de dados está armazenado na região Leste dos EUA do Azure. É recomendável alocar recursos de computação no Leste dos EUA para afinidade.

Informações adicionais

Este conjunto de dados é originado do governo da cidade de Chicago. Veja mais detalhes nestes links: Saneamento, Buracos, Iluminação das vias.

Consulte aqui para ver os termos de uso deste conjunto de dados. Envie um email para em caso de dúvidas sobre a fonte de dados.

Avisos

A MICROSOFT FORNECE O AZURE OPEN DATASETS NO ESTADO EM QUE SE ENCONTRA. A MICROSOFT NÃO OFERECE GARANTIAS OU COBERTURAS, EXPRESSAS OU IMPLÍCITAS, EM RELAÇÃO AO USO DOS CONJUNTOS DE DADOS. ATÉ O LIMITE PERMITIDO PELA LEGISLAÇÃO LOCAL, A MICROSOFT SE EXIME DE TODA A RESPONSABILIDADE POR DANOS OU PERDAS, INCLUSIVE DIRETOS, CONSEQUENTES, ESPECIAIS, INDIRETOS, ACIDENTAIS OU PUNITIVOS, RESULTANTES DO USO DOS CONJUNTOS DE DADOS.

Esse conjunto de dados é fornecido de acordo com os termos originais com que a Microsoft recebeu os dados de origem. O conjunto de dados pode incluir dados originados da Microsoft.

Access

Available inWhen to use
Azure Notebooks

Quickly explore the dataset with Jupyter notebooks hosted on Azure or your local machine.

Azure Databricks

Use this when you need the scale of an Azure managed Spark cluster to process the dataset.

Azure Synapse

Use this when you need the scale of an Azure managed Spark cluster to process the dataset.

Preview

dataType dataSubtype dateTime category subcategory status address source extendedProperties latitude longitude
Safety 311_All 1/20/2021 11:53:25 PM 311 INFORMATION ONLY CALL null Completed 2111 W Lexington ST null
Safety 311_All 1/20/2021 11:52:43 PM 311 INFORMATION ONLY CALL null Completed 2111 W Lexington ST null
Safety 311_All 1/20/2021 11:52:08 PM 311 INFORMATION ONLY CALL null Completed 2111 W Lexington ST null
Safety 311_All 1/20/2021 11:49:54 PM Graffiti Removal Request null Open 2256 S HAMLIN AVE null 41.849984966 -87.720086041
Safety 311_All 1/20/2021 11:48:25 PM Sewer Cave-In Inspection Request null Open 8351 S SOUTH CHICAGO AVE null 41.7430445 -87.573821277
Safety 311_All 1/20/2021 11:47:18 PM 311 INFORMATION ONLY CALL null Completed 2111 W Lexington ST null
Safety 311_All 1/20/2021 11:46:04 PM Sewer Cave-In Inspection Request null Open 8146 S SOUTH CHICAGO AVE null 41.746695051 -87.578946832
Safety 311_All 1/20/2021 11:44:58 PM Aircraft Noise Complaint null Completed 10510 W ZEMKE RD null
Safety 311_All 1/20/2021 11:43:31 PM Alley Light Out Complaint null Open 8600 S KINGSTON AVE null 41.738940473 -87.562658564
Safety 311_All 1/20/2021 11:41:31 PM Sewer Cave-In Inspection Request null Open 8346 S SOUTH CHICAGO AVE null 41.743444233 -87.574429988
Name Data type Unique Values (sample) Description
address string 798,347 2111 W Lexington ST
10510 W ZEMKE RD

Endereço.

category string 99 311 INFORMATION ONLY CALL
Aircraft Noise Complaint

Tipo de solicitação de serviço.

dataSubtype string 1 311_All

“311_Sanitation”, “311_Potholes” ou “311_Street_Lights”.

dataType string 1 Safety

“Segurança”.

dateTime timestamp 3,699,930 2014-01-13 00:00:00
2014-03-10 00:00:00

Data de criação da solicitação de serviço.

latitude double 1,114,162 41.871831278
41.994896549

Latitude.

longitude double 1,228,984 -87.679846219
-87.887751654

Longitude.

status string 5 Completed
Completed - Dup

Status da solicitação de serviço, indicando se ela foi concluída ou não.

Select your preferred service:

Azure Notebooks

Azure Databricks

Azure Synapse

Azure Notebooks

Package: Language: Python Python
In [1]:
# This is a package in preview.
from azureml.opendatasets import ChicagoSafety

from datetime import datetime
from dateutil import parser


end_date = parser.parse('2016-01-01')
start_date = parser.parse('2015-05-01')
safety = ChicagoSafety(start_date=start_date, end_date=end_date)
safety = safety.to_pandas_dataframe()
ActivityStarted, to_pandas_dataframe ActivityStarted, to_pandas_dataframe_in_worker Looking for parquet files... Reading them into Pandas dataframe... Reading Safety/Release/city=Chicago/part-00080-tid-845600952581210110-a4f62588-4996-42d1-bc79-23a9b4635c63-446923.c000.snappy.parquet under container citydatacontainer Done. ActivityCompleted: Activity=to_pandas_dataframe_in_worker, HowEnded=Success, Duration=11294.27 [ms] ActivityCompleted: Activity=to_pandas_dataframe, HowEnded=Success, Duration=11295.76 [ms]
In [2]:
safety.info()
<class 'pandas.core.frame.DataFrame'> Int64Index: 56431 entries, 3751 to 2291417 Data columns (total 11 columns): dataType 56431 non-null object dataSubtype 56431 non-null object dateTime 56431 non-null datetime64[ns] category 56431 non-null object subcategory 0 non-null object status 56431 non-null object address 56431 non-null object latitude 56358 non-null float64 longitude 56358 non-null float64 source 0 non-null object extendedProperties 29124 non-null object dtypes: datetime64[ns](1), float64(2), object(8) memory usage: 5.2+ MB
In [1]:
# Pip install packages
import os, sys

!{sys.executable} -m pip install azure-storage-blob
!{sys.executable} -m pip install pyarrow
!{sys.executable} -m pip install pandas
In [2]:
# Azure storage access info
azure_storage_account_name = "azureopendatastorage"
azure_storage_sas_token = r""
container_name = "citydatacontainer"
folder_name = "Safety/Release/city=Chicago"
In [3]:
from azure.storage.blob import BlockBlobServicefrom azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient

if azure_storage_account_name is None or azure_storage_sas_token is None:
    raise Exception(
        "Provide your specific name and key for your Azure Storage account--see the Prerequisites section earlier.")

print('Looking for the first parquet under the folder ' +
      folder_name + ' in container "' + container_name + '"...')
container_url = f"https://{azure_storage_account_name}.blob.core.windows.net/"
blob_service_client = BlobServiceClient(
    container_url, azure_storage_sas_token if azure_storage_sas_token else None)

container_client = blob_service_client.get_container_client(container_name)
blobs = container_client.list_blobs(folder_name)
sorted_blobs = sorted(list(blobs), key=lambda e: e.name, reverse=True)
targetBlobName = ''
for blob in sorted_blobs:
    if blob.name.startswith(folder_name) and blob.name.endswith('.parquet'):
        targetBlobName = blob.name
        break

print('Target blob to download: ' + targetBlobName)
_, filename = os.path.split(targetBlobName)
blob_client = container_client.get_blob_client(targetBlobName)
with open(filename, 'wb') as local_file:
    blob_client.download_blob().download_to_stream(local_file)
In [4]:
# Read the parquet file into Pandas data frame
import pandas as pd

print('Reading the parquet file into Pandas data frame')
df = pd.read_parquet(filename)
In [5]:
# you can add your filter at below
print('Loaded as a Pandas data frame: ')
df
In [6]:
 

Azure Databricks

Package: Language: Python Python
In [1]:
# This is a package in preview.
# You need to pip install azureml-opendatasets in Databricks cluster. https://docs.microsoft.com/en-us/azure/data-explorer/connect-from-databricks#install-the-python-library-on-your-azure-databricks-cluster
from azureml.opendatasets import ChicagoSafety

from datetime import datetime
from dateutil import parser


end_date = parser.parse('2016-01-01')
start_date = parser.parse('2015-05-01')
safety = ChicagoSafety(start_date=start_date, end_date=end_date)
safety = safety.to_spark_dataframe()
ActivityStarted, to_spark_dataframe ActivityStarted, to_spark_dataframe_in_worker ActivityCompleted: Activity=to_spark_dataframe_in_worker, HowEnded=Success, Duration=3396.42 [ms] ActivityCompleted: Activity=to_spark_dataframe, HowEnded=Success, Duration=3398.23 [ms]
In [2]:
display(safety.limit(5))
dataTypedataSubtypedateTimecategorysubcategorystatusaddresslatitudelongitudesourceextendedProperties
Safety311_All2015-08-14T00:00:00.000+0000Street Lights - All/OutnullCompleted3742 W 59TH ST41.78603578433899-87.71664452773216nullcommunity_area:62,completion_date:2015-08-20T00:00:00.000,police_district:8,service_request_number:15-04081104,type_of_service_request:Street Lights - All/Out,zip_code:60629,y_coordinate:1865225.18787483,x_coordinate:1152434.60798184,ward:23
Safety311_All2015-06-22T00:00:00.000+0000Street Lights - All/OutnullCompleted3719 W 53RD ST41.79697833262681-87.71666270664977nullcommunity_area:62,completion_date:2015-06-23T00:00:00.000,police_district:8,service_request_number:15-02890103,type_of_service_request:Street Lights - All/Out,zip_code:60632,y_coordinate:1869212.53972903,x_coordinate:1152401.04890436,ward:23
Safety311_All2015-12-11T00:00:00.000+0000Street Lights - All/OutnullCompleted2010 N SAWYER AVE41.9177056604285-87.70893291956332nullcommunity_area:22,completion_date:2015-12-14T00:00:00.000,police_district:14,service_request_number:15-06669629,type_of_service_request:Street Lights - All/Out,zip_code:60647,y_coordinate:1913220.44877936,x_coordinate:1154188.85999445,ward:26
Safety311_All2015-09-14T00:00:00.000+0000Street Lights - All/OutnullCompleted4800 N CENTRAL PARK AVE41.96834840769826-87.7182549592663nullcommunity_area:14,completion_date:2015-09-15T00:00:00.000,police_district:17,service_request_number:15-04793248,type_of_service_request:Street Lights - All/Out,zip_code:60625,y_coordinate:1931656.45677884,x_coordinate:1151519.31229956,ward:35
Safety311_All2015-12-17T00:00:00.000+0000Street Lights - All/OutnullCompleted7100 S YATES BLVDnullnullnullnull
In [1]:
# Azure storage access info
blob_account_name = "azureopendatastorage"
blob_container_name = "citydatacontainer"
blob_relative_path = "Safety/Release/city=Chicago"
blob_sas_token = r""
In [2]:
# Allow SPARK to read from Blob remotely
wasbs_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path)
spark.conf.set(
  'fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name),
  blob_sas_token)
print('Remote blob path: ' + wasbs_path)
In [3]:
# SPARK read parquet, note that it won't load any data yet by now
df = spark.read.parquet(wasbs_path)
print('Register the DataFrame as a SQL temporary view: source')
df.createOrReplaceTempView('source')
In [4]:
# Display top 10 rows
print('Displaying top 10 rows: ')
display(spark.sql('SELECT * FROM source LIMIT 10'))

Azure Synapse

Package: Language: Python Python
In [12]:
# This is a package in preview.
from azureml.opendatasets import ChicagoSafety

from datetime import datetime
from dateutil import parser


end_date = parser.parse('2016-01-01')
start_date = parser.parse('2015-05-01')
safety = ChicagoSafety(start_date=start_date, end_date=end_date)
safety = safety.to_spark_dataframe()
In [13]:
# Display top 5 rows
display(safety.limit(5))
Out[13]:
In [14]:
# Display data statistic information
display(safety, summary = True)
Out[14]:
In [1]:
# Azure storage access info
blob_account_name = "azureopendatastorage"
blob_container_name = "citydatacontainer"
blob_relative_path = "Safety/Release/city=Chicago"
blob_sas_token = r""
In [2]:
# Allow SPARK to read from Blob remotely
wasbs_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path)
spark.conf.set(
  'fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name),
  blob_sas_token)
print('Remote blob path: ' + wasbs_path)
In [3]:
# SPARK read parquet, note that it won't load any data yet by now
df = spark.read.parquet(wasbs_path)
print('Register the DataFrame as a SQL temporary view: source')
df.createOrReplaceTempView('source')
In [4]:
# Display top 10 rows
print('Displaying top 10 rows: ')
display(spark.sql('SELECT * FROM source LIMIT 10'))

City Safety

From the Urban Innovation Initiative at Microsoft Research, databricks notebook for analytics with safety data (311 and 911 call data) from major U.S. cities. Analyses show frequency distributions and geographic clustering of safety issues within cities.