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/319#issuecomment-527558961,https://api.github.com/repos/pydata/xarray/issues/319,527558961,MDEyOklzc3VlQ29tbWVudDUyNzU1ODk2MQ==,2448579,2019-09-03T17:29:36Z,2019-09-03T17:29:36Z,MEMBER,Go for it!,"{""total_count"": 1, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 1, ""rocket"": 0, ""eyes"": 0}",,57254455
https://github.com/pydata/xarray/issues/319#issuecomment-527556656,https://api.github.com/repos/pydata/xarray/issues/319,527556656,MDEyOklzc3VlQ29tbWVudDUyNzU1NjY1Ng==,23618263,2019-09-03T17:23:46Z,2019-09-03T17:23:46Z,CONTRIBUTOR,"Is this being worked on?

If not, I can send a PR today since I have some code ready that might help add this functionality.","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,57254455
https://github.com/pydata/xarray/issues/319#issuecomment-518116251,https://api.github.com/repos/pydata/xarray/issues/319,518116251,MDEyOklzc3VlQ29tbWVudDUxODExNjI1MQ==,32473508,2019-08-05T07:17:15Z,2019-08-05T07:17:15Z,CONTRIBUTOR,Will work on this issue in the next three weeks if no one else does till then.,"{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,57254455
https://github.com/pydata/xarray/issues/319#issuecomment-459941364,https://api.github.com/repos/pydata/xarray/issues/319,459941364,MDEyOklzc3VlQ29tbWVudDQ1OTk0MTM2NA==,1217238,2019-02-02T06:52:06Z,2019-02-02T06:52:06Z,MEMBER,"Anyways so yes, I agree that these would definitely be more readable than the equivalent operations with isel().","{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,57254455
https://github.com/pydata/xarray/issues/319#issuecomment-459941280,https://api.github.com/repos/pydata/xarray/issues/319,459941280,MDEyOklzc3VlQ29tbWVudDQ1OTk0MTI4MA==,1217238,2019-02-02T06:50:44Z,2019-02-02T06:51:06Z,MEMBER,"One virtue of tail() is particular is that we can define `array.tail(x=0)` to consistently return an array with an x dimension of size 0. This requires special case logic with slicing, since slice(None, -0) is the same as slice(None, 0).","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,57254455
https://github.com/pydata/xarray/issues/319#issuecomment-459939717,https://api.github.com/repos/pydata/xarray/issues/319,459939717,MDEyOklzc3VlQ29tbWVudDQ1OTkzOTcxNw==,2443309,2019-02-02T06:19:23Z,2019-02-02T06:19:23Z,MEMBER,I think this is still worth doing. I actually prefer @shoyer's original method names and API. I also think this would be a good first issue. ,"{""total_count"": 1, ""+1"": 1, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,57254455
https://github.com/pydata/xarray/issues/319#issuecomment-459819360,https://api.github.com/repos/pydata/xarray/issues/319,459819360,MDEyOklzc3VlQ29tbWVudDQ1OTgxOTM2MA==,26384082,2019-02-01T18:24:11Z,2019-02-01T18:24:11Z,NONE,"In order to maintain a list of currently relevant issues, we mark issues as stale after a period of inactivity

If this issue remains relevant, please comment here or remove the `stale` label; otherwise it will be marked as closed automatically
","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,57254455
https://github.com/pydata/xarray/issues/319#issuecomment-73815254,https://api.github.com/repos/pydata/xarray/issues/319,73815254,MDEyOklzc3VlQ29tbWVudDczODE1MjU0,1794715,2015-02-11T00:39:55Z,2015-02-11T00:39:55Z,CONTRIBUTOR,"seems like for, e.g., head, you can pass either a single dimension or
multiple ones (e.g., either as **kwargs or a dictionary) and use those as
the start dimension.

that said, about naming conventions, i think for tensors the most common
convention is definitely slice() (which is implemented as isel). head/tail
can be implemented in terms of slice().

e.g.:
  ds.slice(dim1=3, dim2=(1,4), dim3=(1,None,5)) -- or --
  ds.slice({'dim1': 3, 'dim2': (1,4), 'dim3': (1, None, 5)})

head/tail/whatever are easy calls to this and you can have that in the
documentation.  as a result, people won't get confused because they
understand slice.

On Tue, Feb 10, 2015 at 4:14 PM, Stephan Hoyer notifications@github.com
wrote:

> @ebrevdo https://github.com/ebrevdo yes, I think we probably need to
> stick to the pandas/numpy convention for the meaning of take.
> 
> My inspiration for these names was the head() and tail() methods in
> pandas, which are quite convenient. But it's not entirely clear how/if
> these generalize cleanly to N-dimensions. I suppose take_first and
> take_last could be an improvement over head/tail.
> 
> —
> Reply to this email directly or view it on GitHub
> https://github.com/xray/xray/issues/319#issuecomment-73812481.
","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,57254455
https://github.com/pydata/xarray/issues/319#issuecomment-73812481,https://api.github.com/repos/pydata/xarray/issues/319,73812481,MDEyOklzc3VlQ29tbWVudDczODEyNDgx,1217238,2015-02-11T00:14:17Z,2015-02-11T00:14:17Z,MEMBER,"@ebrevdo yes, I think we probably need to stick to the pandas/numpy convention for the meaning of `take`.

My inspiration for these names was the `head()` and `tail()` methods in pandas, which are quite convenient. But it's not entirely clear how/if these generalize cleanly to N-dimensions. I suppose `take_first` and `take_last` could be an improvement over `head`/`tail`.
","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,57254455
https://github.com/pydata/xarray/issues/319#issuecomment-73810816,https://api.github.com/repos/pydata/xarray/issues/319,73810816,MDEyOklzc3VlQ29tbWVudDczODEwODE2,1794715,2015-02-11T00:00:14Z,2015-02-11T00:00:14Z,CONTRIBUTOR,"Clojure conventions: .take, .take_last get the first n and last n
pandas/ndarray conventions: .take([3,4,5]) selects rows 3,4,5.

probably want to be consistent with one of these.

On Tue, Feb 10, 2015 at 3:28 PM, Stephan Hoyer notifications@github.com
wrote:

> These would be shortcuts for isel/slice syntax:
> - ds.head(time=5) -> ds.isel(time=slice(5)): select the first five
>   time values
> - ds.tail(time=5) -> ds.isel(time=slice(-5, None)): select the last
>   five time values
> - ds.subsample(time=5) -> ds.isel(time=slice(None, None, 5)): select
>   every 5th time value
> 
> —
> Reply to this email directly or view it on GitHub
> https://github.com/xray/xray/issues/319.
","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,57254455