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/4120#issuecomment-677939698,https://api.github.com/repos/pydata/xarray/issues/4120,677939698,MDEyOklzc3VlQ29tbWVudDY3NzkzOTY5OA==,46687291,2020-08-20T22:32:01Z,2020-08-20T22:53:14Z,CONTRIBUTOR,"My doubts on this are because self._replace are used elsewhere in the code.
Changing from `_replace` to `copy` causes the tests on coarsen to fail, I am looking more into this now.
------------------
It seems that a condition of copy is that the data shapes match (variable.py line 947).
If I run
```
ds = xr.tutorial.load_dataset(""air_temperature"")
ds.air.coarsen(lat=5)
```
there is no problem, but once I add a `.mean()` to the end
```
ds = xr.tutorial.load_dataset(""air_temperature"")
ds.air.coarsen(lat=5).mean()
```
The error is
```
ValueError: Data shape (2920, 5, 53) must match shape of object (2920, 25, 53)
```","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,630062936
https://github.com/pydata/xarray/issues/4120#issuecomment-677926857,https://api.github.com/repos/pydata/xarray/issues/4120,677926857,MDEyOklzc3VlQ29tbWVudDY3NzkyNjg1Nw==,46687291,2020-08-20T21:56:07Z,2020-08-20T21:59:48Z,CONTRIBUTOR,"@dcherian Could this be because the return of `variable.py/coarsen` or is it likely happening earlier in the fx?
```
return self._replace(data=func(reshaped, axis=axes, **kwargs))
```","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,630062936
https://github.com/pydata/xarray/issues/4120#issuecomment-673869137,https://api.github.com/repos/pydata/xarray/issues/4120,673869137,MDEyOklzc3VlQ29tbWVudDY3Mzg2OTEzNw==,11411331,2020-08-14T03:55:32Z,2020-08-14T03:55:32Z,CONTRIBUTOR,Yeah. That's true. I did overlook that. Thanks!,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,630062936
https://github.com/pydata/xarray/issues/4120#issuecomment-673748046,https://api.github.com/repos/pydata/xarray/issues/4120,673748046,MDEyOklzc3VlQ29tbWVudDY3Mzc0ODA0Ng==,11411331,2020-08-13T22:50:48Z,2020-08-13T22:50:48Z,CONTRIBUTOR,"Also, while I was walking through the logic in this problem, I found that in the `_reduce_method` functions of the `DataArrayCoarsen` and `DatasetCoarsen` classes, the `kwargs` variable is being shadowed:
https://github.com/pydata/xarray/blob/df7b2eae3a26c1e86bd5f1dd7dab9cc8c4e53914/xarray/core/rolling.py#L692-L701
So, you can see that the `skipna` option is just being ignored. That's another pretty easy fix, but it will change existing behavior. It might be prudent to look to see if there are any known bug reports referencing the `skipna` parameter being ignored.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,630062936
https://github.com/pydata/xarray/issues/4120#issuecomment-673746511,https://api.github.com/repos/pydata/xarray/issues/4120,673746511,MDEyOklzc3VlQ29tbWVudDY3Mzc0NjUxMQ==,11411331,2020-08-13T22:45:40Z,2020-08-13T22:45:40Z,CONTRIBUTOR,"@dcherian @jukent: After a little walk through the code, I think the problem is in `xarray/core/variable.py`. If you look at the first part of the `coarsen` function in this file:
https://github.com/pydata/xarray/blob/df7b2eae3a26c1e86bd5f1dd7dab9cc8c4e53914/xarray/core/variable.py#L1945-L1953
you will see that `**kwargs` is *not* being pass into the `_coarsen_reshape` function:
https://github.com/pydata/xarray/blob/df7b2eae3a26c1e86bd5f1dd7dab9cc8c4e53914/xarray/core/variable.py#L1961
And down at the bottom of that function:
https://github.com/pydata/xarray/blob/df7b2eae3a26c1e86bd5f1dd7dab9cc8c4e53914/xarray/core/variable.py#L2024-L2025
it retrieves the `keep_attrs` parameter from *global options*, and doesn't check for a passed-in argument.
@jukent, why don't you draft a PR to fix this problem?","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,630062936
https://github.com/pydata/xarray/issues/4120#issuecomment-673729936,https://api.github.com/repos/pydata/xarray/issues/4120,673729936,MDEyOklzc3VlQ29tbWVudDY3MzcyOTkzNg==,11411331,2020-08-13T21:56:14Z,2020-08-13T21:56:46Z,CONTRIBUTOR,"After some testing, I discovered that:
```python
# Your code here
import xarray as xr
xr.set_options(keep_attrs=True) # NOTE GLOBAL OPTION!!!!
ds = xr.tutorial.load_dataset(""air_temperature"")
ds2 = xr.tutorial.load_dataset(""air_temperature"")
xr.testing.assert_identical(ds, ds2) # passes
ds.coarsen(lat=5).mean()
xr.testing.assert_identical(ds, ds2) # passes
```
makes your example pass. So, it seems that somewhere along the chain of functions the `keep_attrs` parameter is being lost or modified.","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,630062936