Navigation überspringen

NOAA Integrated Surface Data (ISD)

Weather ISD NOAA

Stundengenaue Verlaufsdaten zum weltweiten Wetter (z. B. Temperatur, Niederschlag und Wind), die von der Behörde National Oceanic and Atmospheric Administration (NOAA) erstellt werden.

Das Integrated Surface Dataset (ISD) besteht aus weltweiten Oberflächenwetterdaten von 35.000 Wetterstationen, jedoch ist die beste räumliche Abdeckung in Nordamerika, Europa, Australien und Teilen von Asien vorzufinden. Enthaltene Parameter: Luftqualität, Luftdruck, atmosphärische Temperatur/Taupunkt, atmosphärische Windzirkulation, Bewölkung, Niederschlag, Meereswellen, Gezeiten und mehr. Das ISD bezieht sich auf Daten innerhalb der digitalen Datenbank und das Format, in dem stündliche, zusammengefasste (alle 3 Stunden) und tägliche Wetterbeobachtungen gespeichert werden.

Volume und Aufbewahrung

Dieses Dataset wird im Parquet-Format gespeichert. Es wird täglich aktualisiert und enthält ab 2019 insgesamt etwa 400 Mio. Zeilen (20 GB).

Dieses Dataset enthält Datensätze, die von 2008 bis heute gesammelt wurden. Verwenden Sie Parametereinstellungen im SDK, um Daten innerhalb eines bestimmten Zeitbereichs abzurufen.

Speicherort

Dieses Dataset wird in der Azure-Region „USA, Osten“ gespeichert. Aus Gründen der Affinität wird die Zuweisung von Computeressourcen in der Region „USA, Osten“ empfohlen.

Weitere Informationen

Dieses Dataset stammt aus der Integrated Surface Database von NOAA. Zusätzliche Informationen zu diesem Dataset finden Sie unter diesem und diesem Link. Senden Sie eine E-Mail an , wenn Sie Fragen zur Datenquelle haben.

Benachrichtigungen

MICROSOFT STELLT DATASETS DER PLATTFORM AZURE OPEN DATASETS AUF EINER „AS IS“-BASIS (D. H. OHNE MÄNGELGEWÄHR) ZUR VERFÜGUNG. MICROSOFT ÜBERNIMMT WEDER AUSDRÜCKLICH NOCH STILLSCHWEIGEND DIE GEWÄHRLEISTUNG FÜR IHRE NUTZUNG DER DATENSÄTZE UND SICHERT KEINERLEI GARANTIEN ODER BEDINGUNGEN ZU. SOWEIT NACH ÖRTLICH ANWENDBAREM RECHT ZULÄSSIG, LEHNT MICROSOFT JEGLICHE HAFTUNG FÜR SCHÄDEN ODER VERLUSTE AB. DIES SCHLIEßT DIREKTE, INDIREKTE, BESONDERE ODER ZUFÄLLIGE SCHÄDEN ODER VERLUSTE SOWIE FOLGE- UND STRAFSCHÄDEN UND DAMIT VERBUNDENE VERLUSTE EIN.

Für die Bereitstellung dieses Datasets gelten die ursprünglichen Nutzungsbedingungen, unter denen Microsoft die Quelldaten bezogen hat. Das Dataset kann Daten von Microsoft enthalten.

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

usaf wban datetime latitude longitude elevation windAngle windSpeed temperature cloudCoverage stationName countryOrRegion p_k year day version month seaLvlPressure precipTime precipDepth presentWeatherIndicator snowDepth
720712 00250 12/31/2020 11:59:00 PM 31.429 -83.489 108 90 1.5 19 null HENRY TIFT MYERS AIRPORT US 720712-00250 2020 31 1 12
035830 35034 12/31/2020 11:59:00 PM 52.409 0.561 10 null LAKENHEATH RAF UK 035830-35034 2020 31 1 12
747900 13849 12/31/2020 11:59:00 PM 33.973 -80.471 74 0 0 13 null SHAW AIR FORCE BASE US 747900-13849 2020 31 1 12 1021.5
722403 12968 12/31/2020 11:59:00 PM 29.56 -91.53 0 140 4.6 19.4 null SALT POINT US 722403-12968 2020 31 1 12 1006 6 43
723085 13750 12/31/2020 11:59:00 PM 36.938 -76.289 5 30 4.1 9.4 null NORFOLK NAS US 723085-13750 2020 31 1 12 1024.5 6 33
722576 03902 12/31/2020 11:59:00 PM 31.067 -97.829 309 280 5.7 3 null ROBERT GRAY AFF AIRPORT US 722576-03902 2020 31 1 12 1005.6
471240 99999 12/31/2020 11:59:00 PM 36.568 127.5 79 170 1 -11 null SEONGMU KS 471240-99999 2020 31 1 12 1027.4 10 8
722358 93919 12/31/2020 11:59:00 PM 31.178 -90.472 126 1.5 19.4 null MCOM/PIKE CO/J E LWS FD AP US 722358-93919 2020 31 1 12
722536 12911 12/31/2020 11:59:00 PM 29.53 -98.279 232 270 6.7 4 null RANDOLPH AFB AIRPORT US 722536-12911 2020 31 1 12 1007.4
720771 00276 12/31/2020 11:59:00 PM 31.841 -99.404 517 1 null COLEMAN MUNICIPAL AIRPORT US 720771-00276 2020 31 1 12
Name Data type Unique Values (sample) Description
cloudCoverage string 8 CLR
OVC

Der Anteil des Himmels, der von sichtbaren Wolken bedeckt ist. Werte für die Bewölkung:

CLR = Clear skies FEW = Few clouds SCT = Scattered clouds BKN = Broken cloud cover OVC = Overcast OBS = Sky is obscured/can't be estimated POBS = Sky is partially obscured
countryOrRegion string 245 US
CA

Code des Lands oder der Region.

datetime timestamp 6,838,053 2018-01-25 12:00:00
2018-04-09 12:00:00

Datum und Uhrzeit (UTC) einer geophysikalischen Punktüberwachung (GEOPHYSICAL-POINT-OBSERVATION).

day int 31 1
6

Der Tag des datetime-Werts in der Spalte.

elevation double 2,367 5.0
3.0

Die Höhe einer geophysikalischen Punktüberwachung (GEOPHYSICAL-POINT-OBSERVATION) im Vergleich zum Meeresspiegel (Normalnull).

latitude double 34,811 38.544
31.78

Der Breitengrad einer geophysikalischen Punktüberwachung (GEOPHYSICAL-POINT-OBSERVATION), bei dem Werte auf der Südhalbkugel negativ gekennzeichnet sind.

longitude double 58,120 -86.0
-96.622

Der Längengrad einer geophysikalischen Punktüberwachung (GEOPHYSICAL-POINT-OBSERVATION), bei dem Werte südlich von 000.000 bis 179.999 negativ gekennzeichnet sind.

month int 12 12
10

Der Monat des datetime-Werts in der Spalte.

p_k string 17,406 999999-94084
999999-94079

usaf-wban

pastWeatherIndicator int 11 2
6

Ruft eine vergangene Wetteranzeige ab, die das Wetter der letzten Stunde anzeigt

0: Cloud covering 1/2 or less of the sky throughout the appropriate period 1: Cloud covering more than 1/2 of the sky during part of the appropriate period and covering 1/2 or less during part of the period 2: Cloud covering more than 1/2 of the sky throughout the appropriate period 3: Sandstorm, duststorm or blowing snow 4: Fog or ice fog or thick haze 5: Drizzle 6: Rain 7: Snow, or rain and snow mixed 8: Shower(s) 9: Thunderstorm(s) with or without precipitation
precipDepth double 5,666 9999.0
3.0

Die Tiefe des flüssigen Niederschlags (LIQUID-PRECIPITATION), die zum Zeitpunkt der Beobachtung gemessen wurde. Einheiten: Millimeter. MIN: 0000; MAX: 9998; 9999 = Missing; SCALING FACTOR: 10.

precipTime double 44 1.0
24.0

Die Zeitspanne, über die der flüssige Niederschlag (LIQUID-PRECIPITATION) gemessen wurde. Einheiten: Stunden. MIN: 00; MAX: 98; 99 = Fehlt.

presentWeatherIndicator int 101 10
5

Ruft eine aktuelle Wetteranzeige ab, die das Wetter der aktuellen Stunde anzeigt

00: Cloud development not observed or not observable 01: Clouds generally dissolving or becoming less developed 02: State of sky on the whole unchanged 03: Clouds generally forming or developing 04: Visibility reduced by smoke, e.g. veldt or forest fires, industrial smoke or volcanic ashes 05: Haze 06: Widespread dust in suspension in the air, not raised by wind at or near the station at the time of observation 07: Dust or sand raised by wind at or near the station at the time of observation, but no well-developed dust whirl(s) sand whirl(s), and no duststorm or sandstorm seen or, in the case of ships, blowing spray at the station 08: Well developed dust whirl(s) or sand whirl(s) seen at or near the station during the preceding hour or at the time of observation, but no duststorm or sandstorm 09: Duststorm or sandstorm within sight at the time of observation, or at the station during the preceding hour For more: The section 'MW1' in ftp://ftp.ncdc.noaa.gov/pub/data/noaa/isd-format-document.pdf
seaLvlPressure double 2,214 1015.0
1014.0

Der Luftdruck relativ zum mittleren Meeresspiegel.

MIN: 08600 MAX: 10900 EINHEITEN: Hektopascal

snowDepth double 652 1.0
3.0

Die Tiefe des Schnees und Eises auf dem Boden. MIN: 0000 MAX: 1200 EINHEITEN: Zentimeter

stationName string 16,668 NORTHGATE 5 ESE
WHITMAN 5 ENE

Name der Wetterstation.

temperature double 1,467 15.0
13.0

Die Temperatur der Luft. MIN: -0932 MAX: +0618 EINHEITEN: Grad Celsius

usaf string 16,723 999999
062350

AIR FORCE CATALOG (Air Force-Katalog), Stationsnummer.

version double 1 1.0
wban string 2,556 99999
94084

NCDC WBAN-Nummer.

windAngle int 362 180
270

Der Winkel im Uhrzeigersinn zwischen dem geografischen Norden und der Richtung, aus dem der Wind kommt. MIN: 001 MAX: 360 EINHEITEN: Winkelgrad

windSpeed double 620 2.1
1.5

Die Geschwindigkeit der sich bewegenden Luft, gemessen anhand eines festen Punkts.

MIN: 0000 MAX: 0900 EINHEITEN: Meter pro Sekunde

year int 13 2019
2020

Das Jahr des datetime-Werts in der Spalte.

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 NoaaIsdWeather

from datetime import datetime
from dateutil.relativedelta import relativedelta


end_date = datetime.today()
start_date = datetime.today() - relativedelta(months=1)

# Get historical weather data in the past month.
isd = NoaaIsdWeather(start_date, end_date)
# Read into Pandas data frame.
isd_df = isd.to_pandas_dataframe()
ActivityStarted, to_pandas_dataframe ActivityStarted, to_pandas_dataframe_in_worker Target paths: ['/year=2019/month=6/'] Looking for parquet files... Reading them into Pandas dataframe... Reading ISDWeather/year=2019/month=6/part-00049-tid-7654660707407597606-ec55d6c6-0d34-4a97-b2c8-d201080c9a98-89240.c000.snappy.parquet under container isdweatherdatacontainer Done. ActivityCompleted: Activity=to_pandas_dataframe_in_worker, HowEnded=Success, Duration=116905.15 [ms] ActivityCompleted: Activity=to_pandas_dataframe, HowEnded=Success, Duration=116907.63 [ms]
In [2]:
isd_df.info()
<class 'pandas.core.frame.DataFrame'> Int64Index: 7790719 entries, 2709 to 11337856 Data columns (total 22 columns): usaf object wban object datetime datetime64[ns] latitude float64 longitude float64 elevation float64 windAngle float64 windSpeed float64 temperature float64 seaLvlPressure float64 cloudCoverage object presentWeatherIndicator float64 pastWeatherIndicator float64 precipTime float64 precipDepth float64 snowDepth float64 stationName object countryOrRegion object p_k object year int32 day int32 version float64 dtypes: datetime64[ns](1), float64(13), int32(2), object(6) memory usage: 1.3+ GB
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 = "isdweatherdatacontainer"
folder_name = "ISDWeather/"
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 NoaaIsdWeather

from datetime import datetime
from dateutil.relativedelta import relativedelta


end_date = datetime.today()
start_date = datetime.today() - relativedelta(months=1)
isd = NoaaIsdWeather(start_date, end_date)
isd_df = isd.to_spark_dataframe()
ActivityStarted, to_spark_dataframe ActivityStarted, to_spark_dataframe_in_worker ActivityCompleted: Activity=to_spark_dataframe_in_worker, HowEnded=Success, Duration=87171.59 [ms] ActivityCompleted: Activity=to_spark_dataframe, HowEnded=Success, Duration=87176.63 [ms]
In [2]:
display(isd_df.limit(5))
usafwbandatetimelatitudelongitudeelevationwindAnglewindSpeedtemperatureseaLvlPressurecloudCoveragepresentWeatherIndicatorpastWeatherIndicatorprecipTimeprecipDepthsnowDepthstationNamecountryOrRegionp_kyeardayversionmonth
726163547702019-06-30T21:38:00.000+000042.805-72.004317.0null2.617.2nullnull61null1.043.0nullJAFFREY MINI-SLVR RNCH APTUS726163-547702019301.06
726163547702019-06-30T21:52:00.000+000042.805-72.004317.0null1.517.21008.6nullnullnull1.043.0nullJAFFREY MINI-SLVR RNCH APTUS726163-547702019301.06
726163547702019-06-30T22:52:00.000+000042.805-72.004317.0null2.118.91008.8CLRnullnull1.00.0nullJAFFREY MINI-SLVR RNCH APTUS726163-547702019301.06
726163547702019-06-30T23:52:00.000+000042.805-72.004317.0null1.518.31009.1FEWnullnull6.094.0nullJAFFREY MINI-SLVR RNCH APTUS726163-547702019301.06
703260255032019-06-15T07:54:00.000+000058.683-156.65615.0704.110.01005.6null61null1.00.0nullKING SALMON AIRPORTUS703260-255032019151.06
In [1]:
# Azure storage access info
blob_account_name = "azureopendatastorage"
blob_container_name = "isdweatherdatacontainer"
blob_relative_path = "ISDWeather/"
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 [25]:
# This is a package in preview.
from azureml.opendatasets import NoaaIsdWeather

from datetime import datetime
from dateutil.relativedelta import relativedelta


end_date = datetime.today()
start_date = datetime.today() - relativedelta(months=1)
isd = NoaaIsdWeather(start_date, end_date)
isd_df = isd.to_spark_dataframe()
In [26]:
# Display top 5 rows
display(isd_df.limit(5))
Out[26]:
In [1]:
# Azure storage access info
blob_account_name = "azureopendatastorage"
blob_container_name = "isdweatherdatacontainer"
blob_relative_path = "ISDWeather/"
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'))

Urban Heat Islands

From the Urban Innovation Initiative at Microsoft Research, data processing and analytics scripts for hourly NOAA weather station data that produce daily urban heat island indices for hundreds of U.S. cities, January 1, 2008 - present, including automated daily updating. Urban heat island effects are then examined over time and across cities, as well as aligned with population density.