We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
produce_horizon
xarray 2022.12.0 breaks unstack_dates after climatological_mean on a QS-DEC indicators (as we do in produce_horizon).
unstack_dates
climatological_mean
ds_mean = xs.climatological_mean( ds_indicators_seasonal, window=30, ) ds_dates = xs.utils.unstack_dates( ds_mean, new_dim='season', )
Traceback (most recent call last): File "/exec/jlavoie/.conda/xscen-dev/lib/python3.10/site-packages/IPython/core/interactiveshell.py", line 3398, in run_code exec(code_obj, self.user_global_ns, self.user_ns) File "<ipython-input-4-4f71d56dbebf>", line 9, in <cell line: 9> ds_dates = xs.utils.unstack_dates( File "/home/jlavoie/Projets/xscen/xscen/utils.py", line 896, in unstack_dates return dso.assign_coords(**new_coords) File "/exec/jlavoie/.conda/xscen-dev/lib/python3.10/site-packages/xarray/core/common.py", line 615, in assign_coords data.coords.update(results) File "/exec/jlavoie/.conda/xscen-dev/lib/python3.10/site-packages/xarray/core/coordinates.py", line 169, in update coords, indexes = merge_coords( File "/exec/jlavoie/.conda/xscen-dev/lib/python3.10/site-packages/xarray/core/merge.py", line 565, in merge_coords prioritized = _get_priority_vars_and_indexes(aligned, priority_arg, compat=compat) File "/exec/jlavoie/.conda/xscen-dev/lib/python3.10/site-packages/xarray/core/merge.py", line 538, in _get_priority_vars_and_indexes variables, indexes = merge_collected(collected, compat=compat) File "/exec/jlavoie/.conda/xscen-dev/lib/python3.10/site-packages/xarray/core/merge.py", line 281, in merge_collected raise MergeError( xarray.core.merge.MergeError: conflicting values/indexes on objects to be combined fo coordinate 'time' first index: PandasIndex(CFTimeIndex([1950-03-01 00:00:00, 1950-06-01 00:00:00, 1950-09-01 00:00:00, 1950-12-01 00:00:00, 1951-03-01 00:00:00, 1951-06-01 00:00:00, 1951-09-01 00:00:00, 1951-12-01 00:00:00, 1952-03-01 00:00:00, 1952-06-01 00:00:00, ... 2069-09-01 00:00:00, 2069-12-01 00:00:00, 2070-03-01 00:00:00, 2070-06-01 00:00:00, 2070-09-01 00:00:00, 2070-12-01 00:00:00, 2071-03-01 00:00:00, 2071-06-01 00:00:00, 2071-09-01 00:00:00, 2071-12-01 00:00:00], dtype='object', length=488, calendar='noleap', freq='QS-DEC')) second index: PandasIndex(CFTimeIndex([1950-01-01 00:00:00, 1951-01-01 00:00:00, 1952-01-01 00:00:00, 1953-01-01 00:00:00, 1954-01-01 00:00:00, 1955-01-01 00:00:00, 1956-01-01 00:00:00, 1957-01-01 00:00:00, 1958-01-01 00:00:00, 1959-01-01 00:00:00, ... 2062-01-01 00:00:00, 2063-01-01 00:00:00, 2064-01-01 00:00:00, 2065-01-01 00:00:00, 2066-01-01 00:00:00, 2067-01-01 00:00:00, 2068-01-01 00:00:00, 2069-01-01 00:00:00, 2070-01-01 00:00:00, 2071-01-01 00:00:00], dtype='object', length=122, calendar='noleap', freq='AS-JAN')) first variable: <xarray.IndexVariable 'time' (time: 488)> array([cftime.DatetimeNoLeap(1950, 3, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1950, 6, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1950, 9, 1, 0, 0, 0, 0, has_year_zero=True), ..., cftime.DatetimeNoLeap(2071, 6, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2071, 9, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2071, 12, 1, 0, 0, 0, 0, has_year_zero=True)], dtype=object) second variable: <xarray.IndexVariable 'time' (time: 122)> array([cftime.DatetimeNoLeap(1950, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1951, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1952, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1953, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1954, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1955, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1956, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1957, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1958, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1959, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1960, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1961, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1962, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1963, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1964, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1965, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1966, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1967, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1968, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1969, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1970, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1971, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1972, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1973, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1974, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1975, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1976, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1977, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1978, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1979, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1980, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1981, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1982, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1983, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1984, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1985, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1986, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1987, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1988, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1989, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1990, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1991, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1992, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1993, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1994, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1995, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1996, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1997, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1998, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(1999, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2000, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2001, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2002, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2003, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2004, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2005, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2006, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2007, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2008, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2009, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2010, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2011, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2012, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2013, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2014, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2015, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2016, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2017, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2018, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2019, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2020, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2021, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2022, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2023, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2024, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2025, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2026, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2027, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2028, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2029, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2030, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2031, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2032, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2033, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2034, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2035, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2036, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2037, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2038, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2039, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2040, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2041, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2042, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2043, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2044, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2045, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2046, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2047, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2048, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2049, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2050, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2051, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2052, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2053, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2054, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2055, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2056, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2057, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2058, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2059, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2060, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2061, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2062, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2063, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2064, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2065, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2066, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2067, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2068, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2069, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2070, 1, 1, 0, 0, 0, 0, has_year_zero=True), cftime.DatetimeNoLeap(2071, 1, 1, 0, 0, 0, 0, has_year_zero=True)], dtype=object)
The code works with xarray 2022.6.0.
The text was updated successfully, but these errors were encountered:
This sounds like the bug I had in #188. I had to use xclim to reconstruct time series using xclim.core.calendar.datetime_classes[ds.time.dt.calendar]
xclim
xclim.core.calendar.datetime_classes[ds.time.dt.calendar]
See for example https://github.com/Ouranosinc/xscen/blob/main/xscen/aggregate.py#L140
Sorry, something went wrong.
Successfully merging a pull request may close this issue.
Setup Information
Description
xarray 2022.12.0 breaks
unstack_dates
afterclimatological_mean
on a QS-DEC indicators (as we do inproduce_horizon
).Steps To Reproduce
Additional context
The code works with xarray 2022.6.0.
Contribution
The text was updated successfully, but these errors were encountered: