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/3868#issuecomment-1047947800,https://api.github.com/repos/pydata/xarray/issues/3868,1047947800,IC_kwDOAMm_X84-dmoY,4160723,2022-02-22T16:02:21Z,2022-02-22T16:02:21Z,MEMBER,"> Would it be conceivable to implement an alternative form of coordinate index which is explicitly a linear coordinate axis, storing only a first point and a step (possibly a last point but that would obviously be redundant with the length of the dimension) It would be possible to do that after the explicit index refactor is complete (see https://github.com/pydata/xarray/projects/1). #5692 already adds several Xarray methods like `isel`, `sel`, `concat`, `stack`, `roll`, `rename`, etc. to the new Xarray `Index` base class so that it will be possible to provide alternative indexes as `Index` sub-classes with custom implementations. We could certainly add an `Index.pad` method.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,584461380 https://github.com/pydata/xarray/issues/3868#issuecomment-784607034,https://api.github.com/repos/pydata/xarray/issues/3868,784607034,MDEyOklzc3VlQ29tbWVudDc4NDYwNzAzNA==,2448579,2021-02-23T23:34:02Z,2021-02-23T23:34:02Z,MEMBER,@fujiisoup's suggestions looks good to me. PRs welcome!,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,584461380 https://github.com/pydata/xarray/issues/3868#issuecomment-601411557,https://api.github.com/repos/pydata/xarray/issues/3868,601411557,MDEyOklzc3VlQ29tbWVudDYwMTQxMTU1Nw==,6815844,2020-03-19T20:53:30Z,2020-03-19T20:53:30Z,MEMBER,"How about passing an Index instead of just a simple integer to the pad method? ```python In [4]: da = xr.DataArray([0.5, 1.5, 2.5], dims=['x'], coords={'x': [0, 1, 2]}) In [5]: da Out[5]: array([0.5, 1.5, 2.5]) Coordinates: * x (x) int64 0 1 2 In [8]: da.pad(x=([-1, -2], 0)) Out[8]: array([nan, nan, 0.5, 1.5, 2.5]) Coordinates: * x (x) int64 -1 -2 0 1 2 ```","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,584461380