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/2560#issuecomment-445482824,https://api.github.com/repos/pydata/xarray/issues/2560,445482824,MDEyOklzc3VlQ29tbWVudDQ0NTQ4MjgyNA==,514522,2018-12-08T19:13:08Z,2018-12-08T19:13:08Z,CONTRIBUTOR,"Sorry guys. I've found the problem and solution.
The problem is that filesystem not supporting lock mechanism. The solution is to export the following variable: `export HDF5_USE_FILE_LOCKING=FALSE`.","{""total_count"": 2, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 2, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,383057458
https://github.com/pydata/xarray/issues/2560#issuecomment-440909054,https://api.github.com/repos/pydata/xarray/issues/2560,440909054,MDEyOklzc3VlQ29tbWVudDQ0MDkwOTA1NA==,514522,2018-11-22T04:25:05Z,2018-11-22T04:25:05Z,CONTRIBUTOR,https://github.com/limix/limix/blob/2.0.0/limix/qtl/test/test_qtl_xarr.py,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,383057458
https://github.com/pydata/xarray/issues/2410#issuecomment-422368970,https://api.github.com/repos/pydata/xarray/issues/2410,422368970,MDEyOklzc3VlQ29tbWVudDQyMjM2ODk3MA==,514522,2018-09-18T12:17:06Z,2018-09-18T12:17:06Z,CONTRIBUTOR,"I will first try to have both together. I'm well aware that learning by examples (that is true for me at least and apparently to most of people: tldr library), so at first I will try to combine all in one page:
1. Starts with examples, going from simple ones to more complicated one with no definition whasoever.
2. Begins a section defining terms and giving examples that ellucidate them (the first section we have here)
3. Ends with a formal description of the algorithm (the second section we have here)
I prefer starting with 2 and 3 for me to actually understand xarray...","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,359240638
https://github.com/pydata/xarray/issues/2410#issuecomment-421998857,https://api.github.com/repos/pydata/xarray/issues/2410,421998857,MDEyOklzc3VlQ29tbWVudDQyMTk5ODg1Nw==,514522,2018-09-17T12:40:52Z,2018-09-17T12:40:52Z,CONTRIBUTOR,"I have updated mainly the _Indexing and selection data_ section. I'm proposing an indexing notation using `[]` operator vs `()` function call to differentiate between dimension lookup. But more importantly, I'm working out a precise definition of data array indexing in section _Formal indexing definition_.
# Xarray definition
A **data array** `a` has `D` dimensions, ordered from `0` to `D`. It contains an array of dimensionality `D`. The first dimension of that array is associated with the first dimension of the data array, and so forth. That array is returned by the data array attribute `values` . A **named data array** is a data array with the `name` attribute of string value:
```python
>>> import xarray as xr
>>>
>>> a = xr.DataArray([[0, 1], [2, 3], [4, 5]])
>>> a.name = ""My name""
>>> a
array([[0, 1],
[2, 3],
[4, 5]])
Dimensions without coordinates: dim_0, dim_1
```
Each data array dimension has an unique `name` attribute of string type and can be accessed via data array `dims` attribute of tuple type. The name of the dimension `i` is `a.dims[i]` :
```python
>>> a.dims[0]
'dim_0'
```
A data array can have zero or more coordinates, represented by a dict-like `coords` attribute. A coordinate is a named data array, referred also as **coordinate data array**. Coordinate data arrays have unique names among other coordinate data arrays. A coordinate data array of name `x` can be retrieved by `a.coords[x]` .
A coordinate can have zero or more dimensions associated with. A **dimension data array** is a unidimensional coordinate data array associated with one, and only one, dimension having the same name as the coordinate data array itself. A dimension data array has always one, and only one, coordinate. That coordinate has again a dimension data array associated with:
```python
>>> import numpy as np
>>>
>>> a = xr.DataArray(np.arange(6).reshape((3, 2)), dims=[""x"", ""y""], coords={""x"": list(""abc"")})
>>> a
array([[0, 1],
[2, 3],
[4, 5]])
Coordinates:
* x (x) >> a.coords[""x""]
array(['a', 'b', 'c'], dtype='>> a.coords[""x""].coords[""x""]
array(['a', 'b', 'c'], dtype='>> a.loc[""b"", :]
array([2, 3])
Coordinates:
x >> a = xr.DataArray(np.arange(6).reshape((3, 2)), dims=[""year"", ""country""], coords={""year"": [1990, 1994, 1998], ""country"": [""UK"", ""US""]})
>>> a
array([[0, 1],
[2, 3],
[4, 5]])
Coordinates:
* year (year) int64 1990 1994 1998
* country (country) >> a.loc[:, ""UK""]
array([0, 2, 4])
Coordinates:
* year (year) int64 1990 1994 1998
country >> i_0
array([['a'],
['c']], dtype='>> r_0
array(['a', 'b', 'c'], dtype='
array([['a']], dtype='
array([0, 1])
Coordinates:
* x (x)
array([[0],
[1]])
Coordinates:
* x (x) x` and `z|->dim_1` to decide which
axis to expand for the additional element. I will choose y-axis because the additional `a` was
originally appended to the x-axis.
The answer is
```
array([[0],
[1]])
Coordinates:
x (y, z) >> ans.coords[""x""]
array([['a'],
['a']], dtype='