Intake ESM is an experimental new package that aims to provide a higher-level interface to searching and loading Earth System Model data archives, such as CMIP6. The packages is under very active development, and features may be unstable. Please report any issues or suggestions on github.
import xarray as xr
xr.set_options(display_style='html')
import intake
%matplotlib inline
Intake ESM works by parsing an ESM Collection Spec and converting it to an intake catalog. The collection spec is stored in a .json file. Here we open it using intake.
cat_url = "https://storage.googleapis.com/cmip6/pangeo-cmip6.json"
col = intake.open_esm_datastore(cat_url)
col
/srv/conda/envs/notebook/lib/python3.7/site-packages/IPython/core/interactiveshell.py:3417: DtypeWarning: Columns (10) have mixed types.Specify dtype option on import or set low_memory=False. exec(code_obj, self.user_global_ns, self.user_ns)
pangeo-cmip6 catalog with 4749 dataset(s) from 294376 asset(s):
unique | |
---|---|
activity_id | 15 |
institution_id | 34 |
source_id | 79 |
experiment_id | 107 |
member_id | 213 |
table_id | 30 |
variable_id | 392 |
grid_label | 10 |
zstore | 294376 |
dcpp_init_year | 60 |
version | 529 |
We can now use intake methods to search the collection, and, if desired, export a pandas dataframe.
cat = col.search(experiment_id=['historical', 'ssp585'], table_id='Oyr', variable_id='o2',
grid_label='gn')
cat.df
activity_id | institution_id | source_id | experiment_id | member_id | table_id | variable_id | grid_label | zstore | dcpp_init_year | version | |
---|---|---|---|---|---|---|---|---|---|---|---|
0 | CMIP | CCCma | CanESM5-CanOE | historical | r1i1p2f1 | Oyr | o2 | gn | gs://cmip6/CMIP/CCCma/CanESM5-CanOE/historical... | NaN | 20190429 |
1 | CMIP | CCCma | CanESM5-CanOE | historical | r2i1p2f1 | Oyr | o2 | gn | gs://cmip6/CMIP/CCCma/CanESM5-CanOE/historical... | NaN | 20190429 |
2 | CMIP | CCCma | CanESM5-CanOE | historical | r3i1p2f1 | Oyr | o2 | gn | gs://cmip6/CMIP/CCCma/CanESM5-CanOE/historical... | NaN | 20190429 |
3 | CMIP | CCCma | CanESM5 | historical | r10i1p1f1 | Oyr | o2 | gn | gs://cmip6/CMIP/CCCma/CanESM5/historical/r10i1... | NaN | 20190429 |
4 | CMIP | CCCma | CanESM5 | historical | r10i1p2f1 | Oyr | o2 | gn | gs://cmip6/CMIP/CCCma/CanESM5/historical/r10i1... | NaN | 20190429 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
133 | ScenarioMIP | IPSL | IPSL-CM6A-LR | ssp585 | r4i1p1f1 | Oyr | o2 | gn | gs://cmip6/ScenarioMIP/IPSL/IPSL-CM6A-LR/ssp58... | NaN | 20191122 |
134 | ScenarioMIP | IPSL | IPSL-CM6A-LR | ssp585 | r6i1p1f1 | Oyr | o2 | gn | gs://cmip6/ScenarioMIP/IPSL/IPSL-CM6A-LR/ssp58... | NaN | 20191121 |
135 | ScenarioMIP | MIROC | MIROC-ES2L | ssp585 | r1i1p1f2 | Oyr | o2 | gn | gs://cmip6/ScenarioMIP/MIROC/MIROC-ES2L/ssp585... | NaN | 20190823 |
136 | ScenarioMIP | MPI-M | MPI-ESM1-2-LR | ssp585 | r10i1p1f1 | Oyr | o2 | gn | gs://cmip6/ScenarioMIP/MPI-M/MPI-ESM1-2-LR/ssp... | NaN | 20190710 |
137 | ScenarioMIP | MPI-M | MPI-ESM1-2-LR | ssp585 | r1i1p1f1 | Oyr | o2 | gn | gs://cmip6/ScenarioMIP/MPI-M/MPI-ESM1-2-LR/ssp... | NaN | 20190710 |
138 rows × 11 columns
Intake knows how to automatically open the datasets using xarray. Furthermore, intake esm contains special logic to concatenate and merge the individual results of our query into larger, more high-level aggregated xarray datasets.
dset_dict = cat.to_dataset_dict(zarr_kwargs={'consolidated': True})
list(dset_dict.keys())
--> The keys in the returned dictionary of datasets are constructed as follows: 'activity_id.institution_id.source_id.experiment_id.table_id.grid_label'
['ScenarioMIP.MPI-M.MPI-ESM1-2-LR.ssp585.Oyr.gn', 'ScenarioMIP.CCCma.CanESM5-CanOE.ssp585.Oyr.gn', 'CMIP.HAMMOZ-Consortium.MPI-ESM-1-2-HAM.historical.Oyr.gn', 'CMIP.MPI-M.MPI-ESM1-2-LR.historical.Oyr.gn', 'CMIP.CSIRO.ACCESS-ESM1-5.historical.Oyr.gn', 'ScenarioMIP.CSIRO.ACCESS-ESM1-5.ssp585.Oyr.gn', 'ScenarioMIP.DWD.MPI-ESM1-2-HR.ssp585.Oyr.gn', 'CMIP.NCC.NorESM2-MM.historical.Oyr.gn', 'ScenarioMIP.MIROC.MIROC-ES2L.ssp585.Oyr.gn', 'CMIP.CCCma.CanESM5-CanOE.historical.Oyr.gn', 'CMIP.MIROC.MIROC-ES2L.historical.Oyr.gn', 'ScenarioMIP.IPSL.IPSL-CM6A-LR.ssp585.Oyr.gn', 'CMIP.NCC.NorESM2-LM.historical.Oyr.gn', 'ScenarioMIP.DKRZ.MPI-ESM1-2-HR.ssp585.Oyr.gn', 'CMIP.CCCma.CanESM5.historical.Oyr.gn', 'ScenarioMIP.CCCma.CanESM5.ssp585.Oyr.gn', 'CMIP.MPI-M.MPI-ESM1-2-HR.historical.Oyr.gn', 'CMIP.IPSL.IPSL-CM6A-LR.historical.Oyr.gn']
ds = dset_dict['CMIP.CCCma.CanESM5.historical.Oyr.gn']
ds
<xarray.Dataset> Dimensions: (bnds: 2, i: 360, j: 291, lev: 45, member_id: 35, time: 165, vertices: 4) Coordinates: * i (i) int32 0 1 2 3 4 5 6 ... 353 354 355 356 357 358 359 * j (j) int32 0 1 2 3 4 5 6 ... 284 285 286 287 288 289 290 latitude (j, i) float64 dask.array<chunksize=(291, 360), meta=np.ndarray> * lev (lev) float64 3.047 9.454 16.36 ... 5.375e+03 5.625e+03 lev_bnds (lev, bnds) float64 dask.array<chunksize=(45, 2), meta=np.ndarray> longitude (j, i) float64 dask.array<chunksize=(291, 360), meta=np.ndarray> * time (time) object 1850-07-02 12:00:00 ... 2014-07-02 12:0... time_bnds (time, bnds) object dask.array<chunksize=(165, 2), meta=np.ndarray> * member_id (member_id) <U9 'r10i1p1f1' 'r10i1p2f1' ... 'r9i1p2f1' Dimensions without coordinates: bnds, vertices Data variables: o2 (member_id, time, lev, j, i) float32 dask.array<chunksize=(1, 12, 45, 291, 360), meta=np.ndarray> vertices_latitude (j, i, vertices) float64 dask.array<chunksize=(291, 360, 4), meta=np.ndarray> vertices_longitude (j, i, vertices) float64 dask.array<chunksize=(291, 360, 4), meta=np.ndarray> Attributes: variant_label: r9i1p2f1 branch_method: Spin-up documentation source: CanESM5 (2019): \naerosol: interactive\natmo... sub_experiment_id: none cmor_version: 3.4.0 institution_id: CCCma experiment: all-forcing simulation of the recent past mip_era: CMIP6 parent_source_id: CanESM5 parent_activity_id: CMIP nominal_resolution: 100 km parent_time_units: days since 1850-01-01 0:0:0.0 source_type: AOGCM branch_time_in_child: 0.0 activity_id: CMIP grid_label: gn experiment_id: historical grid: ORCA1 tripolar grid, 1 deg with refinement t... forcing_index: 1 CCCma_model_hash: Unknown source_id: CanESM5 YMDH_branch_time_in_child: 1850:01:01:00 external_variables: areacello volcello references: Geophysical Model Development Special issue ... CCCma_parent_runid: p2-pictrl realm: ocnBgchem product: model-output institution: Canadian Centre for Climate Modelling and An... table_id: Oyr realization_index: 9 YMDH_branch_time_in_parent: 5950:01:01:00 frequency: yr creation_date: 2019-05-30T08:58:45Z title: CanESM5 output prepared for CMIP6 Conventions: CF-1.7 CMIP-6.2 status: 2019-10-25;created;by nhn2@columbia.edu CCCma_runid: p2-his09 parent_mip_era: CMIP6 data_specs_version: 01.00.29 parent_experiment_id: piControl version: v20190429 license: CMIP6 model data produced by The Government ... variable_id: o2 further_info_url: https://furtherinfo.es-doc.org/CMIP6.CCCma.C... history: 2019-05-02T13:53:53Z ;rewrote data to be con... sub_experiment: none tracking_id: hdl:21.14100/41426118-701c-482b-ae16-82932e4... contact: ec.cccma.info-info.ccmac.ec@canada.ca branch_time_in_parent: 1496500.0 initialization_index: 1 intake_esm_varname: ['o2'] table_info: Creation Date:(20 February 2019) MD5:374fbe5... intake_esm_dataset_key: CMIP.CCCma.CanESM5.historical.Oyr.gn
array([ 0, 1, 2, ..., 357, 358, 359], dtype=int32)
array([ 0, 1, 2, ..., 288, 289, 290], dtype=int32)
|
array([3.046773e+00, 9.454049e+00, 1.636397e+01, 2.389871e+01, 3.220929e+01, 4.148185e+01, 5.194513e+01, 6.387905e+01, 7.762451e+01, 9.359412e+01, 1.122835e+02, 1.342823e+02, 1.602840e+02, 1.910925e+02, 2.276233e+02, 2.708962e+02, 3.220169e+02, 3.821444e+02, 4.524429e+02, 5.340197e+02, 6.278525e+02, 7.347150e+02, 8.551112e+02, 9.892289e+02, 1.136922e+03, 1.297724e+03, 1.470893e+03, 1.655472e+03, 1.850365e+03, 2.054414e+03, 2.266454e+03, 2.485371e+03, 2.710133e+03, 2.939812e+03, 3.173588e+03, 3.410756e+03, 3.650712e+03, 3.892950e+03, 4.137047e+03, 4.382654e+03, 4.629485e+03, 4.877303e+03, 5.125919e+03, 5.375177e+03, 5.624952e+03])
|
|
array([cftime.DatetimeNoLeap(1850, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1851, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1852, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1853, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1854, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1855, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1856, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1857, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1858, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1859, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1860, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1861, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1862, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1863, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1864, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1865, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1866, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1867, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1868, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1869, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1870, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1871, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1872, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1873, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1874, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1875, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1876, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1877, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1878, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1879, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1880, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1881, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1882, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1883, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1884, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1885, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1886, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1887, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1888, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1889, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1890, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1891, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1892, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1893, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1894, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1895, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1896, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1897, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1898, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1899, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1900, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1901, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1902, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1903, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1904, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1905, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1906, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1907, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1908, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1909, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1910, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1911, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1912, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1913, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1914, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1915, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1916, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1917, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1918, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1919, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1920, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1921, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1922, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1923, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1924, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1925, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1926, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1927, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1928, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1929, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1930, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1931, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1932, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1933, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1934, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1935, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1936, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1937, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1938, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1939, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1940, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1941, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1942, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1943, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1944, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1945, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1946, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1947, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1948, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1949, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1950, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1951, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1952, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1953, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1954, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1955, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1956, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1957, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1958, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1959, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1960, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1961, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1962, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1963, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1964, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1965, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1966, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1967, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1968, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1969, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1970, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1971, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1972, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1973, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1974, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1975, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1976, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1977, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1978, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1979, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1980, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1981, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1982, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1983, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1984, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1985, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1986, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1987, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1988, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1989, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1990, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1991, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1992, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1993, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1994, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1995, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1996, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1997, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1998, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(1999, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2000, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2001, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2002, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2003, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2004, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2005, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2006, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2007, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2008, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2009, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2010, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2011, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2012, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2013, 7, 2, 12, 0, 0, 0), cftime.DatetimeNoLeap(2014, 7, 2, 12, 0, 0, 0)], dtype=object)
|
array(['r10i1p1f1', 'r10i1p2f1', 'r11i1p1f1', 'r12i1p1f1', 'r13i1p1f1', 'r14i1p1f1', 'r15i1p1f1', 'r16i1p1f1', 'r17i1p1f1', 'r18i1p1f1', 'r19i1p1f1', 'r1i1p1f1', 'r1i1p2f1', 'r20i1p1f1', 'r21i1p1f1', 'r22i1p1f1', 'r23i1p1f1', 'r24i1p1f1', 'r25i1p1f1', 'r2i1p1f1', 'r2i1p2f1', 'r3i1p1f1', 'r3i1p2f1', 'r4i1p1f1', 'r4i1p2f1', 'r5i1p1f1', 'r5i1p2f1', 'r6i1p1f1', 'r6i1p2f1', 'r7i1p1f1', 'r7i1p2f1', 'r8i1p1f1', 'r8i1p2f1', 'r9i1p1f1', 'r9i1p2f1'], dtype='<U9')
|
|
|