MCPcopy Index your code
hub / github.com/pydata/xarray / _construct_dataarray

Method _construct_dataarray

xarray/core/dataset.py:1243–1270  ·  view source on GitHub ↗

Construct a DataArray by indexing this dataset

(self, name: Hashable)

Source from the content-addressed store, hash-verified

1241 return self._replace(variables, coord_names, dims, indexes=indexes)
1242
1243 def _construct_dataarray(self, name: Hashable) -> DataArray:
1244 """Construct a DataArray by indexing this dataset"""
1245 from xarray.core.dataarray import DataArray
1246
1247 try:
1248 variable = self._variables[name]
1249 except KeyError:
1250 _, name, variable = _get_virtual_variable(self._variables, name, self.sizes)
1251
1252 needed_dims = set(variable.dims)
1253
1254 coords: dict[Hashable, Variable] = {}
1255 # preserve ordering
1256 for k in self._variables:
1257 if k in self._indexes:
1258 add_coord = self._indexes[k].should_add_coord_to_array(
1259 k, self._variables[k], needed_dims
1260 )
1261 else:
1262 var_dims = set(self._variables[k].dims)
1263 add_coord = k in self._coord_names and var_dims <= needed_dims
1264
1265 if add_coord:
1266 coords[k] = self._variables[k]
1267
1268 indexes = filter_indexes_from_coords(self._indexes, set(coords))
1269
1270 return DataArray(variable, coords, name=name, indexes=indexes, fastpath=True)
1271
1272 @property
1273 def _attr_sources(self) -> Iterable[Mapping[Hashable, Any]]:

Callers 1

__getitem__Method · 0.95

Calls 4

_get_virtual_variableFunction · 0.90
DataArrayClass · 0.90

Tested by

no test coverage detected