{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Test monthly means with leap year for GNSS-RO data" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import xarray as xr\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "from netCDF4 import num2date" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import func as func" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "ds_obs = xr.open_dataset('GPS-RO__CP_LR_5x5_2007-2018.nc')\n", "ds_era5 = xr.open_dataset('FULL-ERA5.monthmean.2007-2018.concat_new.nc')\n", "ds_erai = xr.open_dataset('erai.tp.monmean.nc')" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "obs_y = ds_obs.resample(time='M', keep_attrs=True).mean()\n", "obs_y = obs_y.sel(lat=slice(-20,20))\n", "\n", "#era_y = ds_era5.resample(time='Y', keep_attrs=True).mean()\n", "era_y = ds_era5.sel(lat=slice(-20,20))" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
<xarray.Dataset>\n", "Dimensions: (lat: 13, lon: 72, time: 4383)\n", "Coordinates:\n", " * lon (lon) float64 -177.5 -172.5 -167.5 -162.5 ... 167.5 172.5 177.5\n", " * lat (lat) float64 -30.0 -25.0 -20.0 -15.0 -10.0 ... 15.0 20.0 25.0 30.0\n", " * time (time) datetime64[ns] 2007-01-01 2007-01-02 ... 2018-12-31\n", "Data variables:\n", " CP_T (time, lat, lon) float32 ...\n", " CP_z (time, lat, lon) float32 ...\n", " LR_T (time, lat, lon) float32 ...\n", " LR_z (time, lat, lon) float32 ...
<xarray.DataArray 'time' (time: 170)>\n", "array(['1995-11-15T21:00:00.000000000', '1995-12-16T09:00:00.000000000',\n", " '1996-01-16T09:00:00.000000000', '1996-02-15T09:00:00.000000000',\n", " '1996-03-16T09:00:00.000000000', '1996-04-15T21:00:00.000000000',\n", " '2006-01-16T09:00:00.000000000', '2006-02-14T21:00:00.000000000',\n", " '2006-03-16T09:00:00.000000000', '2006-04-15T21:00:00.000000000',\n", " '2006-05-16T09:00:00.000000000', '2006-06-15T21:00:00.000000000',\n", " '2006-07-16T09:00:00.000000000', '2006-08-16T09:00:00.000000000',\n", " '2006-09-15T21:00:00.000000000', '2006-10-16T09:00:00.000000000',\n", " '2006-11-15T21:00:00.000000000', '2006-12-16T09:00:00.000000000',\n", " '2007-01-16T09:00:00.000000000', '2007-02-14T21:00:00.000000000',\n", " '2007-03-16T09:00:00.000000000', '2007-04-15T21:00:00.000000000',\n", " '2007-05-16T09:00:00.000000000', '2007-06-15T21:00:00.000000000',\n", " '2007-07-16T09:00:00.000000000', '2007-08-16T09:00:00.000000000',\n", " '2007-09-15T21:00:00.000000000', '2007-10-16T09:00:00.000000000',\n", " '2007-11-15T21:00:00.000000000', '2007-12-16T09:00:00.000000000',\n", " '2008-01-16T09:00:00.000000000', '2008-02-15T09:00:00.000000000',\n", " '2008-03-16T09:00:00.000000000', '2008-04-15T21:00:00.000000000',\n", " '2008-05-16T09:00:00.000000000', '2008-06-15T21:00:00.000000000',\n", " '2008-07-16T09:00:00.000000000', '2008-08-16T09:00:00.000000000',\n", " '2008-09-15T21:00:00.000000000', '2008-10-16T09:00:00.000000000',\n", " '2008-11-15T21:00:00.000000000', '2008-12-16T09:00:00.000000000',\n", " '2009-01-16T09:00:00.000000000', '2009-02-14T21:00:00.000000000',\n", " '2009-03-16T09:00:00.000000000', '2009-04-15T21:00:00.000000000',\n", " '2009-05-16T09:00:00.000000000', '2009-06-15T21:00:00.000000000',\n", " '2009-07-16T09:00:00.000000000', '2009-08-16T09:00:00.000000000',\n", " '2009-09-15T21:00:00.000000000', '2009-10-16T09:00:00.000000000',\n", " '2009-11-15T21:00:00.000000000', '2009-12-16T09:00:00.000000000',\n", " '2010-01-16T09:00:00.000000000', '2010-02-14T21:00:00.000000000',\n", " '2010-03-16T09:00:00.000000000', '2010-04-15T21:00:00.000000000',\n", " '2010-05-16T09:00:00.000000000', '2010-06-15T21:00:00.000000000',\n", " '2010-07-16T09:00:00.000000000', '2010-08-16T09:00:00.000000000',\n", " '2010-09-15T21:00:00.000000000', '2010-10-16T09:00:00.000000000',\n", " '2010-11-15T21:00:00.000000000', '2010-12-16T09:00:00.000000000',\n", " '2011-01-16T09:00:00.000000000', '2011-02-14T21:00:00.000000000',\n", " '2011-03-16T09:00:00.000000000', '2011-04-15T21:00:00.000000000',\n", " '2011-05-16T09:00:00.000000000', '2011-06-15T21:00:00.000000000',\n", " '2011-07-16T09:00:00.000000000', '2011-08-16T09:00:00.000000000',\n", " '2011-09-15T21:00:00.000000000', '2011-10-16T09:00:00.000000000',\n", " '2011-11-15T21:00:00.000000000', '2011-12-16T09:00:00.000000000',\n", " '2012-01-16T09:00:00.000000000', '2012-02-15T09:00:00.000000000',\n", " '2012-03-16T09:00:00.000000000', '2012-04-15T21:00:00.000000000',\n", " '2012-05-16T09:00:00.000000000', '2012-06-15T21:00:00.000000000',\n", " '2012-07-16T09:00:00.000000000', '2012-08-16T09:00:00.000000000',\n", " '2012-09-15T21:00:00.000000000', '2012-10-16T09:00:00.000000000',\n", " '2012-11-15T21:00:00.000000000', '2012-12-16T09:00:00.000000000',\n", " '2013-01-16T09:00:00.000000000', '2013-02-14T21:00:00.000000000',\n", " '2013-03-16T09:00:00.000000000', '2013-04-15T21:00:00.000000000',\n", " '2013-05-16T09:00:00.000000000', '2013-06-15T21:00:00.000000000',\n", " '2013-07-16T09:00:00.000000000', '2013-08-16T09:00:00.000000000',\n", " '2013-09-15T21:00:00.000000000', '2013-10-16T09:00:00.000000000',\n", " '2013-11-15T21:00:00.000000000', '2013-12-16T09:00:00.000000000',\n", " '2014-01-16T09:00:00.000000000', '2014-02-14T21:00:00.000000000',\n", " '2014-03-16T09:00:00.000000000', '2014-04-15T21:00:00.000000000',\n", " '2014-05-16T09:00:00.000000000', '2014-06-15T21:00:00.000000000',\n", " '2014-07-16T09:00:00.000000000', '2014-08-16T09:00:00.000000000',\n", " '2014-09-15T21:00:00.000000000', '2014-10-16T09:00:00.000000000',\n", " '2014-11-15T21:00:00.000000000', '2014-12-16T09:00:00.000000000',\n", " '2015-01-16T09:00:00.000000000', '2015-02-14T21:00:00.000000000',\n", " '2015-03-16T09:00:00.000000000', '2015-04-15T21:00:00.000000000',\n", " '2015-05-16T09:00:00.000000000', '2015-06-15T21:00:00.000000000',\n", " '2015-07-16T09:00:00.000000000', '2015-08-16T09:00:00.000000000',\n", " '2015-09-15T21:00:00.000000000', '2015-10-16T09:00:00.000000000',\n", " '2015-11-15T21:00:00.000000000', '2015-12-16T09:00:00.000000000',\n", " '2016-01-16T09:00:00.000000000', '2016-02-15T09:00:00.000000000',\n", " '2016-03-16T09:00:00.000000000', '2016-04-15T21:00:00.000000000',\n", " '2016-05-16T09:00:00.000000000', '2016-06-15T21:00:00.000000000',\n", " '2016-07-16T09:00:00.000000000', '2016-08-16T09:00:00.000000000',\n", " '2016-09-15T21:00:00.000000000', '2016-10-16T09:00:00.000000000',\n", " '2016-11-15T21:00:00.000000000', '2016-12-16T09:00:00.000000000',\n", " '2017-01-16T09:00:00.000000000', '2017-02-14T21:00:00.000000000',\n", " '2017-03-16T09:00:00.000000000', '2017-04-15T21:00:00.000000000',\n", " '2017-05-16T09:00:00.000000000', '2017-06-15T21:00:00.000000000',\n", " '2017-07-16T09:00:00.000000000', '2017-08-16T09:00:00.000000000',\n", " '2017-09-15T21:00:00.000000000', '2017-10-16T09:00:00.000000000',\n", " '2017-11-15T21:00:00.000000000', '2017-12-16T09:00:00.000000000',\n", " '2018-01-16T09:00:00.000000000', '2018-02-14T21:00:00.000000000',\n", " '2018-03-16T09:00:00.000000000', '2018-04-15T21:00:00.000000000',\n", " '2018-05-16T09:00:00.000000000', '2018-06-15T21:00:00.000000000',\n", " '2018-07-16T09:00:00.000000000', '2018-08-16T09:00:00.000000000',\n", " '2018-09-15T21:00:00.000000000', '2018-10-16T09:00:00.000000000',\n", " '2018-11-15T21:00:00.000000000', '2018-12-16T09:00:00.000000000',\n", " '2019-01-16T09:00:00.000000000', '2019-02-14T21:00:00.000000000',\n", " '2019-03-16T09:00:00.000000000', '2019-04-15T21:00:00.000000000',\n", " '2019-05-16T09:00:00.000000000', '2019-06-15T21:00:00.000000000',\n", " '2019-07-16T09:00:00.000000000', '2019-08-16T09:00:00.000000000'],\n", " dtype='datetime64[ns]')\n", "Coordinates:\n", " * time (time) datetime64[ns] 1995-11-15T21:00:00 ... 2019-08-16T09:00:00\n", "Attributes:\n", " long_name: time\n", " cell_methods: time: mean
<xarray.DataArray 'time' (time: 59)>\n", "array(['2006-01-16T09:00:00.000000000', '2006-02-14T21:00:00.000000000',\n", " '2006-03-16T09:00:00.000000000', '2006-04-15T21:00:00.000000000',\n", " '2006-05-16T09:00:00.000000000', '2006-06-15T21:00:00.000000000',\n", " '2006-07-16T09:00:00.000000000', '2006-08-16T09:00:00.000000000',\n", " '2006-09-15T21:00:00.000000000', '2006-10-16T09:00:00.000000000',\n", " '2006-11-15T21:00:00.000000000', '2006-12-16T09:00:00.000000000',\n", " '2007-01-16T09:00:00.000000000', '2007-02-14T21:00:00.000000000',\n", " '2007-03-16T09:00:00.000000000', '2007-04-15T21:00:00.000000000',\n", " '2007-05-16T09:00:00.000000000', '2007-06-15T21:00:00.000000000',\n", " '2007-07-16T09:00:00.000000000', '2007-08-16T09:00:00.000000000',\n", " '2007-09-15T21:00:00.000000000', '2007-10-16T09:00:00.000000000',\n", " '2007-11-15T21:00:00.000000000', '2007-12-16T09:00:00.000000000',\n", " '2008-01-16T09:00:00.000000000', '2008-02-15T09:00:00.000000000',\n", " '2008-03-16T09:00:00.000000000', '2008-04-15T21:00:00.000000000',\n", " '2008-05-16T09:00:00.000000000', '2008-06-15T21:00:00.000000000',\n", " '2008-07-16T09:00:00.000000000', '2008-08-16T09:00:00.000000000',\n", " '2008-09-15T21:00:00.000000000', '2008-10-16T09:00:00.000000000',\n", " '2008-11-15T21:00:00.000000000', '2008-12-16T09:00:00.000000000',\n", " '2009-01-16T09:00:00.000000000', '2009-02-14T21:00:00.000000000',\n", " '2009-03-16T09:00:00.000000000', '2009-04-15T21:00:00.000000000',\n", " '2009-05-16T09:00:00.000000000', '2009-06-15T21:00:00.000000000',\n", " '2009-07-16T09:00:00.000000000', '2009-08-16T09:00:00.000000000',\n", " '2009-09-15T21:00:00.000000000', '2009-10-16T09:00:00.000000000',\n", " '2009-11-15T21:00:00.000000000', '2009-12-16T09:00:00.000000000',\n", " '2010-01-16T09:00:00.000000000', '2010-02-14T21:00:00.000000000',\n", " '2010-03-16T09:00:00.000000000', '2010-04-15T21:00:00.000000000',\n", " '2010-05-16T09:00:00.000000000', '2010-06-15T21:00:00.000000000',\n", " '2010-07-16T09:00:00.000000000', '2010-08-16T09:00:00.000000000',\n", " '2010-09-15T21:00:00.000000000', '2010-10-16T09:00:00.000000000',\n", " '2010-11-15T21:00:00.000000000'], dtype='datetime64[ns]')\n", "Coordinates:\n", " * time (time) datetime64[ns] 2006-01-16T09:00:00 ... 2010-11-15T21:00:00\n", "Attributes:\n", " long_name: time\n", " cell_methods: time: mean