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/2079#issuecomment-386906920,https://api.github.com/repos/pydata/xarray/issues/2079,386906920,MDEyOklzc3VlQ29tbWVudDM4NjkwNjkyMA==,6213168,2018-05-06T19:30:30Z,2018-05-06T19:30:30Z,MEMBER,"As I was dissatisfied with the prototype, I scrapped it and rewrote it mocking the splrep/splev API. However my functions don't wrap around ``scipy.interpolate.splrep/splev``, as those don't accept an n-dimensional y, but instead they wrap around ``scipy.interpolate.make_interp_spline`` and ``scipy.interpolate.BSpline`` (which is what ``scipy.interpolate.interp1d`` does too). Compared to the prototype above:
- lost support for Akima, PCHIP, and the non-spline options of interp1d
- MUCH more memory-efficient than before, particularly on distributed
- no more hacks - splrep produces a plain Dataset, which can be stored on NetCDF, sliced, etc. etc.
- gained ability to have chunks on x_new
I built a production-quality version (inclusive of documentation, unit tests, and all the trimmings) at https://github.com/crusaderky/xarray_extras. Happy to discuss moving it to somebody else's module.
You still can't have a chunked x. It *is* possible to implement it with ``dask.array.ghost.ghost``, although it would be mutually exclusive with a chunked x_new - contributions are welcome.
Closing this ticket as I agree this is beyond the scope of the core xarray package.
","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,317421267
https://github.com/pydata/xarray/issues/2079#issuecomment-384366752,https://api.github.com/repos/pydata/xarray/issues/2079,384366752,MDEyOklzc3VlQ29tbWVudDM4NDM2Njc1Mg==,6213168,2018-04-25T17:22:33Z,2018-04-25T17:22:33Z,MEMBER,"For my use case slrep caching is critical, as I need to interpolate 20-something curves roughly 4000 times on different points. Changing the application to gather all points from downstream and do one big interpolation would not be feasible as it would kill off my RAM and be very hostile to a distributed environment. ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,317421267