Navigáció kihagyása

UK Met Office Global Weather Data for COVID-19 Analysis

COVID-19 coronavirus Met Office environment Weather AIforEarth

Ezek az adatok a COVID-19-et kutatók számára készültek a COVID-19 és a környezeti tényezők közötti kapcsolatok megismeréséhez.

További információt ebben a blogbejegyzésben találhat. Ha számítási erőforrásokra van szüksége az adatok feldolgozásához lehet, hogy segíthetünk Önnek.

Licenc

A felhasználóknak adatforrásként meg kell jelölniük a Meteorológiai Hivatalt úgy, hogy minden eredményül kapott termékben, kiadványban vagy alkalmazásban szerepeltetniük kell az alábbi forrásmegjelölést: „A Meteorológiai Hivatal adatait tartalmaz az Open Government Licenc 3.0 verzióját használva”.

Ezeket az adatokat az Open Government licenc használatával tettük elérhetővé.

Tudnivalók az adatokról

Globális és nagy részletességű egyesült királysági numerikus időjárási modell kimenete az Egyesült Királyság Meteorológiai Hivatalától. Az adatok a modell nagyon korai időszakaszaiból származnak az adatasszimilációt követően, így ezek az adatok közelítő pontosságúak a teljes Földre vonatkozó megfigyelési adatkészlet alapján.

Az alábbi változók érhetőek el:

  • t1o5m = Levegő hőmérséklete 1,5m-en K-ben
  • sh = Specifikus páratartalom 1,5m-en kg/kg-ban (kg vízpára 1 kg levegőben)
  • sw = Rövidhullámú sugárzás Wm − 2-ban (napfényre használva)
  • precip = Csapadékfluxus kgm − 2s − 1-ban (megszorozva 3600 mm/hr értékhez)
  • rain = Esőfluxus kgm − 2s − 1-ban (megszorozva 3600 mm/hr értékhez)
  • pmsl = Légnyomás közepes tengerszint fölötti értékkel Pa-ban

Az adatok NetCDF-fájlokként érhetőek el.

A globális és az Egyesült Királyságra vonatkozó frissített adatok 2020. jan. 01-től érhetőek el. A frissítés naponta történik az előző napi adatokkal.

Az adatok előállításával és a paraméterekkel kapcsolatos részletes információkért tekintse meg a technikai referenciát.

További, feldolgozás utáni adatösszesítések is elérhetőek a COVID-19 jelentéskészítési régióiról az Egyesült Királyságra és az USÁ-ra vonatkozóan. A részleteket alább találja.

Tárolási hely

Az adatkészlet tárolási helye az USA 2. keleti régiója. Az affinitás érdekében az USA 2. keleti régióján belüli számítási erőforrások lefoglalását javasoljuk.

Gyorshivatkozások

Adatkötetek, adatmegőrzés és frissítési gyakoriság

Az előző napi rácsadatok naponta vannak frissítve.

    1. 18-án az adatkészlet teljes mérete mintegy 352G. Ez hetente körülbelül 22G mennyiséggel növekszik.

Ezeket az adatokat mindaddig megőrizzük és elérhetővé tesszük, amíg úgy értékeljük, hogy hasznosak lehetnek a COVID-19 világjárvány kezeléséhez.

Első lépések

Az adatokat a Microsoft Azure tárolja az AI for Earth kezdeményezés keretében. Az adatokat több különféle módon elérheti, többek között az alábbiakkal:

Rámutatás és kattintás

Nyissa meg az index fájlt a böngészőben. Megjelenik egy lista az adatfájlokra mutató hivatkozásokkal, amelyeket úgy tölthet le, ha rájuk kattint a böngészőben.

Azure Blob-kódtárak

Az Azure Blob használatához számos kódtár és nyelv használható. További információt az Azure Blob dokumentációjában talál.

Letöltés az AZCopy használatával

Nagyon sok fájl érhető el, ezért javasoljuk, hogy telepítse az azcopy parancssori eszközt, amelyet innen tölthet le. Ennek használatával teljes könyvtárakat is letölthet, vagy használhat helyettesítő karaktereket is több fájl letöltéséhez.

Példa:

A global_daily_precip_max_20200101.nc fájl letöltése az aktuális könyvtárba:
azcopy cp https://metdatasa.blob.core.windows.net/covid19-response/metoffice_global_daily/precip_max/global_daily_precip_max_20200101.nc .

A /metoffice_ukv_daily/snow_mean/ to ukv_daily_snow_mean/ tartalmának letöltése:
azcopy cp 'https://metdatasa.blob.core.windows.net/covid19-response/metoffice_ukv_daily/snow_mean/*' ukv_daily_snow_mean/

Letölti az USA-beli államokhoz a megyei átlagos meteorológiai adatokat az us_55*.csv mintának megfeleltetve:
azcopy cp --recursive --include-pattern 'us_55*.csv' https://metdatasa.blob.core.windows.net/covid19-response/regional_subset_data/us_data/ .

Az adatok felépítése

metoffice_global_daily/

A Meteorológiai Hivatal napi globális, rácsos adatfájljait tartalmazza. Mindegyik változóhoz egy könyvtár tartozik.

Minden fájl leíró névvel rendelkezik, például: global_daily_{variable}_{statistic}_{YYYYMMDD}.nc.

  • .../t1o5m_mean/ = Napi átlagos léghőmérséklet fájlok
  • .../t1o5m_max/ = Napi maximum léghőmérséklet fájlok
  • .../t1o5m_min/ = Napi minimum léghőmérséklet fájlok
  • .../sh_mean/ = Napi specifikus páratartalom középértéke fájlok
  • .../sh_max/ = Napi specifikus páratartalom maximuma fájlok
  • .../sh_min/ = Napi specifikus páratartalom minimuma fájlok
  • .../sw_mean/ = A rövidhullámú sugárzás napi átlaga fájlok
  • .../sw_max/ = A rövidhullámú sugárzás napi maximuma fájlok
  • .../precip_mean/ = A csapadékfluxus napi középértéke fájlok
  • .../precip_max/ = A csapadékfluxus napi maximuma fájlok
metoffice_global_hourly/

A Meteorológiai Hivatal óránkénti globális, rácsos adatfájljait tartalmazza.

Minden fájl leíró névvel rendelkezik*, például: global_hourly_{variable}_global_{YYYYMMDD}.nc.

  • .../t1o5m/ = Óránkénti léghőmérséklet fájlok
  • .../sh/ = Óránkénti specifikus páratartalom fájlok
  • .../sw/ = A rövidhullámú sugárzás óránként fájlok
  • .../precip/ = A csapadékfluxus óránként fájlok
  • .../precip3hr/ = A csapadékfluxus háromóránként fájlok
  • .../pmsl/ = Óránkénti légnyomás közepes tengerszint fölötti értékkel fájlok
metoffice_ukv_daily/

… a Meteorológiai Hivatal napi rácsos UKV-adatfájljait tartalmazza.

Minden fájl leíró névvel rendelkezik, például: ukv_daily_{variable}_{statistic}_{YYYYMMDD}.nc.

  • .../t1o5m_mean/ = Napi átlagos léghőmérséklet fájlok
  • .../t1o5m_max/ = Napi maximum léghőmérséklet fájlok
  • .../t1o5m_min/ = Napi minimum léghőmérséklet fájlok
  • .../sh_mean/ = Napi specifikus páratartalom középértéke fájlok
  • .../sh_max/ = Napi specifikus páratartalom maximuma fájlok
  • .../sh_min/ = Napi specifikus páratartalom minimuma fájlok
  • .../sw_mean/ = A rövidhullámú sugárzás napi átlaga fájlok
  • .../sw_max/ = A rövidhullámú sugárzás napi maximuma fájlok
metoffice_ukv_hourly/

… a Meteorológiai Hivatal óránkénti rácsos UKV-adatfájljait tartalmazza.

Minden fájl leíró névvel rendelkezik, például: ukv_hourly_{variable}_{YYYYMMDD}.nc.

  • .../t1o5m_ukv/ = Óránkénti léghőmérséklet fájlok
  • .../sh_ukv/ = Óránkénti specifikus páratartalom fájlok
  • .../sw_ukv/ = A rövidhullámú sugárzás óránként fájlok
  • .../pmsl_ukv/ = Óránkénti légnyomás közepes tengerszint fölötti értékkel fájlok
regional_subset_data/

… feldolgozott, regionális napi értékeket tartalmaz az Egyesült Királyságra és az USA-ra .csv formátumú fájlokként.

A fájlok a Meteorológiai Hivatal rácsos, globális napi fájljainak feltöltésével lettek feldolgozva minden régióra alakzatfájlokat alkalmazva, a szélességi-hosszúsági középértékeket véve az egyes változókhoz mindegyik régióban minden dátumra, és ezeket az értékeket táblázatban mentve .csv formátumú fájlokként.

  • .../uk_daily_meteodata_2020jan-mar_v03.csv = napi értékek t1o5m, sh, sw és precip változókhoz minden jelentési régióhoz az Egyesült Királyságban (minden fájlt egyesítve a /uk_data/ és /uk_data_precip könyvtárakban).
  • .../us_daily_meteodata_2020jan-mar_v03.csv = napi értékek t1o5m, sh, sw és precip változókhoz minden megyéhez az Egyesült Államokban (minden fájlt egyesítve a /us_data/ és /us_data_precip könyvtárakban)
  • .../uk_data/ = napi értékek t1o5m, sh és sw változókhoz minden jelentési régióhoz az Egyesült Királyságban(egy .csv-fájl régiónként)
  • .../uk_data_precip/ = napi értékek precip változóhoz minden jelentési régióhoz az Egyesült Királyságban (egy .csv-fájl régiónként)
  • .../us_data/ = napi értékek t1o5m, sh és sw változókhoz minden megyéhez az Egyesült Államokban (egy .csv-fájl megyénként)
  • .../us_data_precip/ = napi értékek precip változóhoz minden megyéhez az Egyesült Államokban (egy .csv-fájl megyénként)
shapefiles/

Alakzatfájlokat tartalmaz az Egyesült Királyság, az Egyesült Államok, Brazília, Olaszország, Uganda és Vietnám területére.

  • .../UK/ = Egyesült Királyság COVID-19-jelentést készítő régiók
  • .../USA/ = USA-beli államok megyéi
  • .../Italy/ = GADM v3.6 2. adminisztratív szint Olaszországhoz
  • .../Brazil/ = GADM v3.6 2. adminisztratív szint Brazíliához
  • .../Uganda/ = GADM v3.6 2. adminisztratív szint Ugandához
  • .../Vietnam/ = GADM v3.6 2. adminisztratív szint Vietnamhoz

Ahol lehetséges, a fájlnevek a leírásnak megfelelően alakulnak. Tekintettel azonban arra, hogy ezek az adatok igen rövid időn belül lettek elérhetővé téve, a fájlnevek leírásában kisebb változások lehetnek. A fájlnevek ezzel együtt is utalnak majd az adatokra. Ha problémát tapasztal a fájlnevekkel vagy magukkal az adatokkal kapcsolatban, írjon nekünk a covid19@informaticslab.co.uk címre.

Segítség kérése és kapcsolatfelvétel

Ha segítségre van szüksége, vagy ha további adatokat szeretne, írjon nekünk a covid19@informaticslab.co.uk címre.

Értesítések

A MICROSOFT JELEN ÁLLAPOTUKBAN SZOLGÁLTATJA AZ AZURE NYÍLT ADATKÉSZLETEIT. A MICROSOFT NEM VÁLLAL SEMMINEMŰ KIFEJEZETT VAGY HALLGATÓLAGOS JÓTÁLLÁST AZ ADATKÉSZLETEK HASZNÁLATÁRA VONATKOZÓAN. A HELYI TÖRVÉNYEK ÁLTAL ENGEDETT MÉRTÉKBEN A MICROSOFT ELHÁRÍT MINDEN FELELŐSSÉGET AZ ADATKÉSZLETEK HASZNÁLATÁBÓL ADÓDÓ ESETLEGES KÁROKÉRT VAGY VESZTESÉGEKÉRT, BELEÉRTVE A KÖZVETLEN, KÖVETKEZMÉNYES, KÜLÖNLEGES, KÖZVETETT, VÉLETLEN VAGY BÜNTETÉSBŐL EREDŐ KÁROKAT.

Access

Available inWhen to use
Azure Notebooks

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

Select your preferred service:

Azure Notebooks

Azure Notebooks

Package: Language: Python

Met Office COVID-19 response dataset

This dataset is created, curated and updated for researchers looking to understand links between COVID-19 and environmental factors.

For more information check out our blog post and the data readme.

We are constantly updating the available data; subscribe to our news group to stay up to date or contact us if you have any requests or questions.

Imports and globals

Import the required modules, set up the default plot size and set some constants

In [1]:
import matplotlib.pyplot as plt 
import datetime

from azure.storage.blob import BlobClient, ContainerClient
from IPython.display import Markdown
from collections import namedtuple

%matplotlib inline
plt.rcParams['figure.figsize'] = (20.0, 10.0)

Set up the blob client with the connection details

In [2]:
account_url  = 'https://metdatasa.blob.core.windows.net/'
container_name = 'covid19-response'

# Create the ContainerClient object which will be used to enumerate blobs
container_client = ContainerClient(account_url=account_url,
                                   container_name=container_name,
                                   credential=None)

List the files under metoffice_global_daily/t1o5m_max

In [3]:
max_blobs = 10
for i_blob,blob in enumerate(container_client.list_blobs(
    name_starts_with='metoffice_global_daily/t1o5m_max')):
    print(f'{blob.name}')
    if i_blob >= max_blobs:
        break
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200101.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200102.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200103.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200104.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200105.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200106.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200107.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200108.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200109.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200110.nc
metoffice_global_daily/t1o5m_max/global_daily_t1o5m_max_20200111.nc

Get a particular file based on the data required

In [4]:
data_end = (datetime.datetime.now() - datetime.timedelta(days=9)).date()
data_start = datetime.date(2020,1,1)

def url_from_properties(model, param, freq, stat=None, day=None, hour=None):
    
    assert model in ["global","ukv"]
    assert param in ["rain", "sh", "snow", "t1o5m", "pmsl","precip","sw"]
    assert freq in ["daily","hourly"]
    if freq == 'daily':
        assert stat in ['max', 'min', 'mean']
    else:
        assert stat is None  
    assert data_start <= day <= data_end
    
    stat = '_'+stat if stat else ''

    filepath = f'metoffice_{model}_{freq}/{param}{stat}/{model}_{freq}_{param}{stat}_{day:%Y%m%d}.nc'
    return f"{account_url}/{container_name}/{filepath}"

Properties = namedtuple('Properties',["model","param","freq","stat","day"])

files = [
    Properties("global","precip","daily","mean",datetime.date(2020,3,3)),
    Properties("ukv","t1o5m","daily","min",datetime.date(2020,4,1)),
    Properties("ukv","snow","hourly",None,datetime.date(2020,2,2)),
]

for file in files:
    path = url_from_properties(*file)
    print(path.replace(account_url,''))
/covid19-response/metoffice_global_daily/precip_mean/global_daily_precip_mean_20200303.nc
/covid19-response/metoffice_ukv_daily/t1o5m_min/ukv_daily_t1o5m_min_20200401.nc
/covid19-response/metoffice_ukv_hourly/snow/ukv_hourly_snow_20200202.nc

xarray and iris are useful tools for interacting with this sort of data

In [5]:
import xarray as xr
import iris
from io import BytesIO

Stream blob into memory and load dataset in xarray

In [6]:
data_description = Properties("global","precip","daily","mean",datetime.date(2020,1,30))
file_data = BytesIO(BlobClient.from_blob_url(
    url_from_properties(*data_description)).download_blob().readall())
ds = xr.open_dataset(file_data)
ds
Out[6]:
Show/Hide data repr Show/Hide attributes
xarray.Dataset
    • bnds: 2
    • latitude: 1920
    • longitude: 2560
    • latitude
      (latitude)
      float32
      -89.953125 -89.859375 ... 89.953125
    • longitude
      (longitude)
      float32
      0.0703125 0.2109375 ... 359.9297
    • forecast_period
      ()
      timedelta64[ns]
      ...
    • forecast_reference_time
      ()
      datetime64[ns]
      ...
    • time
      ()
      datetime64[ns]
      ...
    • precipitation_flux
      (latitude, longitude)
      float32
      ...
    • latitude_longitude
      ()
      int32
      ...
    • forecast_period_bnds
      (bnds)
      float64
      ...
    • forecast_reference_time_bnds
      (bnds)
      datetime64[ns]
      ...
    • time_bnds
      (bnds)
      datetime64[ns]
      ...
  • source :
    Data from Met Office Unified Model
    um_version :
    11.2
    Conventions :
    CF-1.5

Plot it with iris

In [ ]:
import tempfile

ds.precipitation_flux.plot()

tmp = tempfile.NamedTemporaryFile(delete=False)
data_description = Properties("ukv","sw","hourly",None,datetime.date(2020,1,30))
tmp.write(BlobClient.from_blob_url(
    url_from_properties(*data_description)).download_blob().readall())
local_path = tmp.name
tmp.close()

sw = iris.load_cube(local_path)
sw
Out[ ]:
M01S01I202 (1) forecast_period forecast_reference_time grid_latitude grid_longitude
Shape 6 4 808 621
Dimension coordinates
forecast_period x - - -
forecast_reference_time - x - -
grid_latitude - - x -
grid_longitude - - - x
Auxiliary coordinates
time x x - -
Attributes
Conventions CF-1.5
STASH m01s01i202
source Data from Met Office Unified Model
um_version 11.2