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/2689#issuecomment-456201092,https://api.github.com/repos/pydata/xarray/issues/2689,456201092,MDEyOklzc3VlQ29tbWVudDQ1NjIwMTA5Mg==,9658781,2019-01-21T21:17:02Z,2019-01-21T21:17:02Z,CONTRIBUTOR,"Okay will have a look at #1887 first, before going forward with this request :) ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,400678252
https://github.com/pydata/xarray/issues/2689#issuecomment-456128567,https://api.github.com/repos/pydata/xarray/issues/2689,456128567,MDEyOklzc3VlQ29tbWVudDQ1NjEyODU2Nw==,9658781,2019-01-21T16:21:29Z,2019-01-21T16:21:29Z,CONTRIBUTOR,"Hey Shoyer,
sure I am happy to propose one.
Given the input from the xarray example page (http://xarray.pydata.org/en/stable/examples/weather-data.html), I would imagine something like this:
```python
xarr = xarr.loc[xarr['tmin'] > 5]
```
If the DataArray is one dimensional this is straight forward to achieve by altering the _LocIndexer in the following way:
```
class _LocIndexer(object):
def __init__(self, dataset):
self.dataset = dataset
def __getitem__(self, key):
if not utils.is_dict_like(key):
selector = {dim: key[dim][key] for dim in key.dims}
keep_vars = []
for var in self.dataset.data_vars:
if np.all(dim in self.dataset[var].dims for dim in key.dims):
keep_vars.append(var)
return self.dataset[keep_vars].sel(selector)
return self.dataset.sel(**key)
```
This does not work for higher dimensions though as 2-dimensional boolean indexing is not supported.
It would as well get rid of all other DataArrarys which do not have shared dimensions with the indexer.
Probably, there is a better place to do this, that in the loc function. However, I think it would be great in case people need to filter their data by something else than the array dimensions.
Cheers,
Jendrik","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,400678252