datatree.DataTree.drop_vars#
- DataTree.drop_vars(names: str | Iterable[Hashable] | Callable[[Self], str | Iterable[Hashable]], *, errors: ErrorOptions = 'raise') Self [source]#
Drop variables from this dataset.
- Parameters
names (
Hashable
or iterable ofHashable
orCallable
) – Name(s) of variables to drop. If a Callable, this object is passed as its only argument and its result is used.errors (
{"raise", "ignore"}
, default:"raise"
) – If ‘raise’, raises a ValueError error if any of the variable passed are not in the dataset. If ‘ignore’, any given names that are in the dataset are dropped and no error is raised.
Examples
>>> dataset = xr.Dataset( ... { ... "temperature": ( ... ["time", "latitude", "longitude"], ... [[[25.5, 26.3], [27.1, 28.0]]], ... ), ... "humidity": ( ... ["time", "latitude", "longitude"], ... [[[65.0, 63.8], [58.2, 59.6]]], ... ), ... "wind_speed": ( ... ["time", "latitude", "longitude"], ... [[[10.2, 8.5], [12.1, 9.8]]], ... ), ... }, ... coords={ ... "time": pd.date_range("2023-07-01", periods=1), ... "latitude": [40.0, 40.2], ... "longitude": [-75.0, -74.8], ... }, ... ) >>> dataset <xarray.Dataset> Dimensions: (time: 1, latitude: 2, longitude: 2) Coordinates: * time (time) datetime64[ns] 2023-07-01 * latitude (latitude) float64 40.0 40.2 * longitude (longitude) float64 -75.0 -74.8 Data variables: temperature (time, latitude, longitude) float64 25.5 26.3 27.1 28.0 humidity (time, latitude, longitude) float64 65.0 63.8 58.2 59.6 wind_speed (time, latitude, longitude) float64 10.2 8.5 12.1 9.8
Drop the ‘humidity’ variable
>>> dataset.drop_vars(["humidity"]) <xarray.Dataset> Dimensions: (time: 1, latitude: 2, longitude: 2) Coordinates: * time (time) datetime64[ns] 2023-07-01 * latitude (latitude) float64 40.0 40.2 * longitude (longitude) float64 -75.0 -74.8 Data variables: temperature (time, latitude, longitude) float64 25.5 26.3 27.1 28.0 wind_speed (time, latitude, longitude) float64 10.2 8.5 12.1 9.8
Drop the ‘humidity’, ‘temperature’ variables
>>> dataset.drop_vars(["humidity", "temperature"]) <xarray.Dataset> Dimensions: (time: 1, latitude: 2, longitude: 2) Coordinates: * time (time) datetime64[ns] 2023-07-01 * latitude (latitude) float64 40.0 40.2 * longitude (longitude) float64 -75.0 -74.8 Data variables: wind_speed (time, latitude, longitude) float64 10.2 8.5 12.1 9.8
Drop all indexes
>>> dataset.drop_vars(lambda x: x.indexes) <xarray.Dataset> Dimensions: (time: 1, latitude: 2, longitude: 2) Dimensions without coordinates: time, latitude, longitude Data variables: temperature (time, latitude, longitude) float64 25.5 26.3 27.1 28.0 humidity (time, latitude, longitude) float64 65.0 63.8 58.2 59.6 wind_speed (time, latitude, longitude) float64 10.2 8.5 12.1 9.8
Attempt to drop non-existent variable with errors=”ignore”
>>> dataset.drop_vars(["pressure"], errors="ignore") <xarray.Dataset> Dimensions: (time: 1, latitude: 2, longitude: 2) Coordinates: * time (time) datetime64[ns] 2023-07-01 * latitude (latitude) float64 40.0 40.2 * longitude (longitude) float64 -75.0 -74.8 Data variables: temperature (time, latitude, longitude) float64 25.5 26.3 27.1 28.0 humidity (time, latitude, longitude) float64 65.0 63.8 58.2 59.6 wind_speed (time, latitude, longitude) float64 10.2 8.5 12.1 9.8
Attempt to drop non-existent variable with errors=”raise”
>>> dataset.drop_vars(["pressure"], errors="raise") Traceback (most recent call last): ValueError: These variables cannot be found in this dataset: ['pressure']
- Raises
ValueError – Raised if you attempt to drop a variable which is not present, and the kwarg
errors='raise'
.- Returns
dropped (
Dataset
)
See also
DataArray.drop_vars