html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,performed_via_github_app,issue https://github.com/pydata/xarray/issues/3666#issuecomment-571689678,https://api.github.com/repos/pydata/xarray/issues/3666,571689678,MDEyOklzc3VlQ29tbWVudDU3MTY4OTY3OA==,22454970,2020-01-07T17:31:53Z,2020-01-07T17:31:53Z,NONE,"FYI - @dcherian @keewis ... thanks for the suggestions and help This final small change (dropping time values before replacing with the common calendar) has gotten all cases in the xclim code test suite running against the xarray@master... Feel free to close ````dslist =[] for d in datasets: ds = xr.open_dataset(d, chunks=dict(time=10), decode_times=False) cal1 = xr.decode_cf(ds).time ds = ds.drop_vars('time') ds[""time""] = pd.to_datetime( { ""year"": cal1.time.dt.year, ""month"": cal1.time.dt.month, ""day"": cal1.time.dt.day, } ).values dslist.append(ds) ens1 = xr.concat(dslist,dim='realization') #ens1 = ensembles.create_ensemble(datasets) print(ens1)","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,546303413 https://github.com/pydata/xarray/issues/3666#issuecomment-571669562,https://api.github.com/repos/pydata/xarray/issues/3666,571669562,MDEyOklzc3VlQ29tbWVudDU3MTY2OTU2Mg==,22454970,2020-01-07T16:42:44Z,2020-01-07T16:42:44Z,NONE,"I think I need to leave the ds.time as undecoded and create a calendar variable each time then overwrite the ds values: ```import wget import glob import xarray as xr import pandas as pd # def install(package): # subprocess.check_call([sys.executable, ""-m"", ""pip"", ""install"", package]) # try: # from xclim import ensembles # except: # install('xclim') # from xclim import ensembles outdir = '/home/travis/Downloads' url = [] url.append('https://github.com/Ouranosinc/xclim/raw/master/tests/testdata/EnsembleStats/BCCAQv2+ANUSPLIN300_ACCESS1-0_historical+rcp45_r1i1p1_1950-2100_tg_mean_YS.nc') url.append('https://github.com/Ouranosinc/xclim/raw/master/tests/testdata/EnsembleStats/BCCAQv2+ANUSPLIN300_BNU-ESM_historical+rcp45_r1i1p1_1950-2100_tg_mean_YS.nc') url.append('https://github.com/Ouranosinc/xclim/raw/master/tests/testdata/EnsembleStats/BCCAQv2+ANUSPLIN300_CCSM4_historical+rcp45_r1i1p1_1950-2100_tg_mean_YS.nc') url.append('https://github.com/Ouranosinc/xclim/raw/master/tests/testdata/EnsembleStats/BCCAQv2+ANUSPLIN300_CCSM4_historical+rcp45_r2i1p1_1950-2100_tg_mean_YS.nc') for u in url: wget.download(u,out=outdir) datasets = glob.glob(f'{outdir}/*1950*.nc') dslist =[] for d in datasets: ds = xr.open_dataset(d, chunks=dict(time=10), decode_times=False) cal1 = xr.decode_cf(ds).time ds[""time""].values = pd.to_datetime( { ""year"": cal1.time.dt.year, ""month"": cal1.time.dt.month, ""day"": cal1.time.dt.day, } ) dslist.append(ds) ens1 = xr.concat(dslist,dim='realization') #ens1 = ensembles.create_ensemble(datasets) print(ens1)","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,546303413 https://github.com/pydata/xarray/issues/3666#issuecomment-571668871,https://api.github.com/repos/pydata/xarray/issues/3666,571668871,MDEyOklzc3VlQ29tbWVudDU3MTY2ODg3MQ==,22454970,2020-01-07T16:41:07Z,2020-01-07T16:41:07Z,NONE,"This is more or less what I was doing but I think the problem may be that I am trying to overwrite the cfdatetime with the pd.datetime in a loop see code below: ```import wget import glob import xarray as xr import pandas as pd # def install(package): # subprocess.check_call([sys.executable, ""-m"", ""pip"", ""install"", package]) # try: # from xclim import ensembles # except: # install('xclim') # from xclim import ensembles outdir = '/home/travis/Downloads' url = [] url.append('https://github.com/Ouranosinc/xclim/raw/master/tests/testdata/EnsembleStats/BCCAQv2+ANUSPLIN300_ACCESS1-0_historical+rcp45_r1i1p1_1950-2100_tg_mean_YS.nc') url.append('https://github.com/Ouranosinc/xclim/raw/master/tests/testdata/EnsembleStats/BCCAQv2+ANUSPLIN300_BNU-ESM_historical+rcp45_r1i1p1_1950-2100_tg_mean_YS.nc') url.append('https://github.com/Ouranosinc/xclim/raw/master/tests/testdata/EnsembleStats/BCCAQv2+ANUSPLIN300_CCSM4_historical+rcp45_r1i1p1_1950-2100_tg_mean_YS.nc') url.append('https://github.com/Ouranosinc/xclim/raw/master/tests/testdata/EnsembleStats/BCCAQv2+ANUSPLIN300_CCSM4_historical+rcp45_r2i1p1_1950-2100_tg_mean_YS.nc') for u in url: wget.download(u,out=outdir) datasets = glob.glob(f'{outdir}/*1950*.nc') dslist =[] for d in datasets: ds = xr.open_dataset(d, chunks=dict(time=10), decode_times=False) ds['time'] = xr.decode_cf(ds).time ds[""time""].values = pd.to_datetime( { ""year"": ds.time.dt.year, ""month"": ds.time.dt.month, ""day"": ds.time.dt.day, } ) dslist.append(ds) ens1 = xr.concat(dslist,dim='realization') ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,546303413 https://github.com/pydata/xarray/issues/3666#issuecomment-571641613,https://api.github.com/repos/pydata/xarray/issues/3666,571641613,MDEyOklzc3VlQ29tbWVudDU3MTY0MTYxMw==,22454970,2020-01-07T15:42:37Z,2020-01-07T15:42:37Z,NONE,"Ok thanks, Basically the xclim ensembles code should overwrite a common calendar pd.datetime format to these monthly datasets (various calendar type) before concatenation (as mixing calendars is not possible). I will try to write it as an xarray only example","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,546303413