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/2788#issuecomment-467490757,https://api.github.com/repos/pydata/xarray/issues/2788,467490757,MDEyOklzc3VlQ29tbWVudDQ2NzQ5MDc1Nw==,35968931,2019-02-26T15:46:06Z,2019-02-26T15:46:06Z,MEMBER,"> What methods and properties must be implemented in DataArray to assure it works properly?
You don't really need to implement anything, you're effectively just adding new methods and properties to the class, you don't need to reimplement anything which is already there.
```python
@xarray.register_dataset_accessor('example')
class ExampleDataArrayAccessor():
def __init__(self, da):
pass
def hello_world(self):
print(""hello world!"")
ds = xr.Dataset({'longitude': np.linspace(0, 10), 'latitude': np.linspace(0, 20)})
ds.example.hello_world()
```
```
hello world!
```
> Is there a full template/example of doing this?
You've linked to the only example current in the official documentation. (I think there should be more examples.) However I found reading the discussion and examples in [this issue thread](https://github.com/pydata/xarray/issues/1080) pretty helpful.
Also I have a very simple example of creating a dataset accessor [here](https://github.com/TomNicholas/xBOUT-1/blob/0030c53382cb96e89f9b266b2f0bbd39cefd6b26/xbout/boutdataset.py#L93).","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,414552031