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/2055#issuecomment-385016657,https://api.github.com/repos/pydata/xarray/issues/2055,385016657,MDEyOklzc3VlQ29tbWVudDM4NTAxNjY1Nw==,8453445,2018-04-27T16:04:12Z,2018-04-27T16:04:12Z,CONTRIBUTOR,"Great, will do.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,314239017 https://github.com/pydata/xarray/issues/2055#issuecomment-385016272,https://api.github.com/repos/pydata/xarray/issues/2055,385016272,MDEyOklzc3VlQ29tbWVudDM4NTAxNjI3Mg==,8453445,2018-04-27T16:02:44Z,2018-04-27T16:02:44Z,CONTRIBUTOR,"> The where example might be better added to the section on where: http://xarray.pydata.org/en/v0.10.3/indexing.html#masking-with-where I think this is not correct. the where you linked (or at least the way it is used) is for [masking](http://xarray.pydata.org/en/v0.10.3/generated/xarray.DataArray.where.html#xarray.DataArray.where). In my example uses [xarray.where()](http://xarray.pydata.org/en/v0.10.3/generated/xarray.where.html) to assign values. but again, I might be off, i have a limited understanding of this.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,314239017 https://github.com/pydata/xarray/issues/2055#issuecomment-385000519,https://api.github.com/repos/pydata/xarray/issues/2055,385000519,MDEyOklzc3VlQ29tbWVudDM4NTAwMDUxOQ==,8453445,2018-04-27T15:12:39Z,2018-04-27T15:12:39Z,CONTRIBUTOR,"For example, using the tutorial data: ``` ds = xr.tutorial.load_dataset('air_temperature') #add an empty 2D dataarray ds['empty']= xr.full_like(ds.air.mean('time'),fill_value=0) #modify one grid point, using where() or loc() ds['empty'] = xr.where((ds.coords['lat']==20)&(ds.coords['lon']==260), 100, ds['empty']) ds['empty'].loc[dict(lon=260, lat=30)] = 100 #modify an area with where() and a mask mask = (ds.coords['lat']>20)&(ds.coords['lat']<60)&(ds.coords['lon']>220)&(ds.coords['lon']<260) ds['empty'] = xr.where(mask, 100, ds['empty']) #modify an area with loc() lc = ds.coords['lon'] la = ds.coords['lat'] ds['empty'].loc[dict(lon=lc[(lc>220)&(lc<260)], lat=la[(la>20)&(la<60)])] = 100 ``` these are examples that I am pretty sure are not on the website, they are I think common in climate scientists workflow, and that it took me quite a while to figure out. I was using a boolean dataarray as well as in the SO example, slowing down my work of quite a bit. Do they make sense? I can try and add them to the documentation at [Assigning Values with indexing](http://xarray.pydata.org/en/stable/indexing.html#assigning-values-with-indexing) , or is there another place that is more relevant? ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,314239017 https://github.com/pydata/xarray/issues/2055#issuecomment-384989608,https://api.github.com/repos/pydata/xarray/issues/2055,384989608,MDEyOklzc3VlQ29tbWVudDM4NDk4OTYwOA==,8453445,2018-04-27T14:36:45Z,2018-04-27T14:36:45Z,CONTRIBUTOR,"I finally had the time to try out this SO suggestion on assigning on multiple dimensions as well (imaging being in need to modify the forcing of a model for a selected area) and it works. These are quite peculiar ways (at least for people not deep into xarray...) to assign values; I am compiling a list of them which IMHO should be added somewhere in the help. I will post them here for discussion, and to make sure they are indeed the most correct way to do it! ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,314239017 https://github.com/pydata/xarray/issues/2055#issuecomment-381254511,https://api.github.com/repos/pydata/xarray/issues/2055,381254511,MDEyOklzc3VlQ29tbWVudDM4MTI1NDUxMQ==,8453445,2018-04-13T20:38:09Z,2018-04-13T20:38:09Z,CONTRIBUTOR,"Regarding B) I think that the current text can lead to confusion: > Select or assign values by integer location (like numpy): x[:10] or by label (like pandas): x.loc['2014-01-01'] or x.sel(time='2014-01-01'). because selecting and assigning are discussed together. I think that should be fixed too. ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,314239017