Oproepen aan de brandweercentrale voor service- en 311-cases in San Francisco.
Brand- en servicemeldingen bevat alle beantwoorde oproepen van de brandweer. Elke record bevat het oproepnummer, het incidentnummer, het adres, de eenheids-id, het oproeptype en de beschikking. Alle relevante tijdsintervallen worden ook vermeld. Omdat deze gegevensset op reacties is gebaseerd en omdat bij de meeste oproepen meerdere eenheden zijn betrokken, zijn er voor elk oproepnummer meerdere records. Adressen worden aan een straatnummer, kruispunt of telefoontoestel gekoppeld, niet aan een specifieke adres.
Onder 311-cases vallen cases die over het algemeen bij een plaats of object (bijvoorbeeld een park, straat of gebouw) horen en die op of na 1 juli 2008 zijn gemaakt. Cases die doorgaans zijn gemeld door een gebruiker met betrekking tot zijn of haar eigen behoeften (bijvoorbeeld vragen over onroerendgoed- of bedrijfsbelasting en aanvragen voor een parkeervergunning) worden niet opgenomen. Zie de programmakoppeling voor meer informatie.
Volume en retentie
Deze gegevensset wordt opgeslagen in de Parquet-indeling. De gegevensset wordt dagelijks bijgewerkt en bevat sinds 2019 in totaal ongeveer 6 miljoen rijen (400 MB).
Deze gegevensset bevat historische records die vanaf 2015 tot heden zijn verzameld. U kunt in onze SDK gebruikmaken van parameterinstellingen om gegevens op te halen binnen een specifiek tijdsbereik.
Opslaglocatie
Deze gegevensset wordt opgeslagen in de Azure-regio US - oost. Het wordt aanbevolen om rekenresources in US - oost toe te wijzen voor affiniteit.
Aanvullende informatie
Deze gegevensset is afkomstig van het stadsbestuur van San Francisco. U vindt meer informatie via de volgende koppelingen: Oproepen aan brandweer, 311-cases.
Raadpleeg de informatie hier voor de voorwaarden voor het gebruik van deze gegevensset.
Mededelingen
AZURE OPEN GEGEVENSSETS WORDEN DOOR MICROSOFT ONGEWIJZIGD GELEVERD. MICROSOFT GEEFT GEEN GARANTIES, EXPLICIET OF IMPLICIET, ZEKERHEDEN OF VOORWAARDEN MET BETREKKING TOT HET GEBRUIK VAN DE GEGEVENSSETS. VOOR ZOVER IS TOEGESTAAN ONDER HET TOEPASSELIJKE RECHT, WIJST MICROSOFT ALLE AANSPRAKELIJKHEID AF VOOR SCHADE OF VERLIEZEN, WAARONDER GEVOLGSCHADE OF DIRECTE, SPECIALE, INDIRECTE, INCIDENTELE OF PUNITIEVE SCHADE DIE VOORTVLOEIT UIT HET GEBRUIK VAN DE GEGEVENSSETS.
Deze gegevensset wordt geleverd onder de oorspronkelijke voorwaarden dat Microsoft de brongegevens heeft ontvangen. De gegevensset kan gegevens bevatten die afkomstig zijn van Microsoft.
Access
Available in | When 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 |
---|---|---|---|---|---|---|---|---|
Safety | 911_Fire | 1/21/2021 2:59:53 AM | Non Life-threatening | Medical Incident | null | 900 Block of HYDE ST | null | |
Safety | 911_Fire | 1/21/2021 2:55:16 AM | Alarm | Other | null | 17TH ST/CLAYTON ST | null | |
Safety | 911_Fire | 1/21/2021 2:48:02 AM | Potentially Life-Threatening | Medical Incident | null | 6TH ST/STEVENSON ST | null | |
Safety | 911_Fire | 1/21/2021 2:31:55 AM | Potentially Life-Threatening | Medical Incident | null | 17TH ST/ROOSEVELT WY | null | |
Safety | 911_Fire | 1/21/2021 2:28:05 AM | null | Alarms | null | 500 Block of CHURCH ST | null | |
Safety | 911_Fire | 1/21/2021 2:28:05 AM | null | Alarms | null | 500 Block of CHURCH ST | null | |
Safety | 911_Fire | 1/21/2021 2:28:05 AM | null | Alarms | null | 500 Block of CHURCH ST | null | |
Safety | 911_Fire | 1/21/2021 2:20:34 AM | Alarm | Other | null | 400 Block of PARNASSUS AVE | null | |
Safety | 911_Fire | 1/21/2021 2:20:34 AM | Alarm | Other | null | 400 Block of PARNASSUS AVE | null | |
Safety | 911_Fire | 1/21/2021 2:20:34 AM | Alarm | Other | null | 400 Block of PARNASSUS AVE | null |
Name | Data type | Unique | Values (sample) | Description |
---|---|---|---|---|
address | string | 270,913 | Not associated with a specific address 0 Block of 6TH ST |
Adres van het incident (opmerking: adres en locatie zijn gegeneraliseerd tot het middelste blok van de straat, een kruispunt of de dichtstbijzijnde telefoonpost, ten behoeve van de privacy van de beller). |
category | string | 108 | Street and Sidewalk Cleaning Potentially Life-Threatening |
De leesbare naam van de groep voor 311-serviceaanvraagtypen of oproeptypen voor 911-brandmeldingen. |
dataSubtype | string | 2 | 911_Fire 311_All |
‘911_Fire’ of ‘311_All’. |
dataType | string | 1 | Safety | ‘Safety’ |
dateTime | timestamp | 6,330,062 | 2020-10-19 12:28:08 2020-07-28 06:40:26 |
De datum en tijd waarop de serviceaanvraag is ingediend of waarop de brandmelding is ontvangen. |
latitude | double | 1,518,478 | 37.777624238929 37.786117211838 |
De breedtegraad van de locatie, met behulp van de WGS84-projectie. |
longitude | double | 1,461,242 | -122.39998111124 -122.419854245692 |
De lengtegraad van de locatie, met behulp van de WGS84-projectie. |
source | string | 9 | Phone Mobile/Open311 |
Mechanisme of kanaal waarop de serviceoproep is ontvangen; doorgaans ‘Telefoon’, ‘Tekstbericht/sms’, ‘Website’, ‘Mobiele app’, ‘Twitter’, enzovoort, maar de voorwaarden kunnen per systeem afwijken. |
status | string | 3 | Closed Open |
Een indicatie van één woord van de huidige status van de service-oproep. (Opmerking: GeoReport V2 staat alleen ‘open’ en ‘gesloten’ toe) |
subcategory | string | 1,270 | Medical Incident Bulky Items |
De leesbare naam van het subtype voor serviceaanvragen voor 311-meldingen of oproeptypen voor 911-brandmeldingen. |
Azure Notebooks
# This is a package in preview.
from azureml.opendatasets import SanFranciscoSafety
from datetime import datetime
from dateutil import parser
end_date = parser.parse('2016-01-01')
start_date = parser.parse('2015-05-01')
safety = SanFranciscoSafety(start_date=start_date, end_date=end_date)
safety = safety.to_pandas_dataframe()
safety.info()
# 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
# Azure storage access info
azure_storage_account_name = "azureopendatastorage"
azure_storage_sas_token = r""
container_name = "citydatacontainer"
folder_name = "Safety/Release/city=SanFrancisco"
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)
# 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)
# you can add your filter at below
print('Loaded as a Pandas data frame: ')
df
Azure Databricks
# 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 SanFranciscoSafety
from datetime import datetime
from dateutil import parser
end_date = parser.parse('2016-01-01')
start_date = parser.parse('2015-05-01')
safety = SanFranciscoSafety(start_date=start_date, end_date=end_date)
safety = safety.to_spark_dataframe()
display(safety.limit(5))
# Azure storage access info
blob_account_name = "azureopendatastorage"
blob_container_name = "citydatacontainer"
blob_relative_path = "Safety/Release/city=SanFrancisco"
blob_sas_token = r""
# 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)
# 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')
# Display top 10 rows
print('Displaying top 10 rows: ')
display(spark.sql('SELECT * FROM source LIMIT 10'))
Azure Synapse
# This is a package in preview.
from azureml.opendatasets import SanFranciscoSafety
from datetime import datetime
from dateutil import parser
end_date = parser.parse('2016-01-01')
start_date = parser.parse('2015-05-01')
safety = SanFranciscoSafety(start_date=start_date, end_date=end_date)
safety = safety.to_spark_dataframe()
# Display top 5 rows
display(safety.limit(5))
# Azure storage access info
blob_account_name = "azureopendatastorage"
blob_container_name = "citydatacontainer"
blob_relative_path = "Safety/Release/city=SanFrancisco"
blob_sas_token = r""
# 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)
# 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')
# 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.