def sel(self, indexers=None, method=None, tolerance=None, drop=False,
            **indexers_kwargs):
        """Return a new DataArray whose dataset is given by selecting
        index labels along the specified dimension(s).

        .. warning::

          Do not try to assign values when using any of the indexing methods
          ``isel`` or ``sel``::

            da = xr.DataArray([0, 1, 2, 3], dims=['x'])
            # DO NOT do this
            da.isel(x=[0, 1, 2])[1] = -1

          Assigning values with the chained indexing using ``.sel`` or
          ``.isel`` fails silently.

        See Also
        --------
        Dataset.sel
        DataArray.isel

        """
        ds = self._to_temp_dataset().sel(
            indexers=indexers, drop=drop, method=method, tolerance=tolerance,
            **indexers_kwargs)
        return self._from_temp_dataset(ds)