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/pull/3607#issuecomment-1462754116,https://api.github.com/repos/pydata/xarray/issues/3607,1462754116,IC_kwDOAMm_X85XL9tE,43316012,2023-03-09T20:37:18Z,2023-03-09T20:37:18Z,COLLABORATOR,"Is that still wanted? It seems like a useful feature to have.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,535686852 https://github.com/pydata/xarray/pull/3607#issuecomment-851459023,https://api.github.com/repos/pydata/xarray/issues/3607,851459023,MDEyOklzc3VlQ29tbWVudDg1MTQ1OTAyMw==,24736507,2021-05-31T12:31:28Z,2021-05-31T12:39:49Z,NONE,"Hello @niowniow! Thanks for updating this PR. We checked the lines you've touched for [PEPĀ 8](https://www.python.org/dev/peps/pep-0008) issues, and found: There are currently no PEP 8 issues detected in this Pull Request. Cheers! :beers: ##### Comment last updated at 2021-05-31 12:39:49 UTC","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,535686852 https://github.com/pydata/xarray/pull/3607#issuecomment-564303463,https://api.github.com/repos/pydata/xarray/issues/3607,564303463,MDEyOklzc3VlQ29tbWVudDU2NDMwMzQ2Mw==,6815844,2019-12-10T23:16:51Z,2019-12-10T23:16:51Z,MEMBER,"@niowniow Thank you for your contribution! I think `stride` option is a good idea. One thing is how to implement this efficient nan-reduction method. Currently, we use 'bottleneck' if it is installed for speeding up nan-ops, but bottleneck does not support `stride` option. Another problem is inefficiency of nan-ops of numpy for strided arrays; he copies the strided array into full array and replace np.nan by zero before the reduction. One way we could do is 1. skip using 'bottleneck' if `stride` is other than 1 2. implement our nan-ops for rolling. For example, for `nansum`, we can replace `np.nan` by 0 *before* creating the strided arrays and apply usual `sum` for the strided array. In `rolling.count`, we did a similar thing.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,535686852