# xarray.IndexVariable.var

#### IndexVariable.var(dim=None, , skipna=None, ddof=0, \*\*kwargs)[[source]](https://github.com/pydata/xarray/blob/main/xarray/namedarray/_aggregations.py#L639-L718)

Reduce this NamedArray’s data by applying `var` (i.e., variance) along some dimension(s).

* **Parameters:**
  * **dim** ([`str`](https://docs.python.org/3/builtins/stdtypes.html#str), `Iterable` of `Hashable`, `"..."` or [`None`](https://docs.python.org/3/builtins/constants.html#None), *default*: [`None`](https://docs.python.org/3/builtins/constants.html#None)) – Name of dimension[s] along which to apply `var`. For e.g. `dim="x"`
    or `dim=["x", "y"]`. If “…” or None, will reduce over all dimensions.
  * **skipna** ([`bool`](https://docs.python.org/3/builtins/functions.html#bool) or [`None`](https://docs.python.org/3/builtins/constants.html#None), *optional*) – If True, skip missing values (as marked by NaN). By default, only
    skips missing values for float dtypes; other dtypes either do not
    have a sentinel missing value (int) or `skipna=True` has not been
    implemented (object, datetime64 or timedelta64).
  * **ddof** ([`int`](https://docs.python.org/3/builtins/functions.html#int), *default*: `0`) – “Delta Degrees of Freedom”: the divisor used in the calculation is `N - ddof`,
    where `N` represents the number of elements.
  * **\*\*kwargs** (`Any`) – Additional keyword arguments passed on to the appropriate array
    function for calculating `var` on this object’s data.
    These could include dask-specific kwargs like `split_every`.
* **Returns:**
  **reduced** (`NamedArray`) – New NamedArray with `var` applied to its data and the
  indicated dimension(s) removed

#### SEE ALSO
[`numpy.var`](https://numpy.org/doc/stable/reference/generated/numpy.var.html#numpy.var), [`dask.array.var`](https://docs.dask.org/en/latest/generated/dask.array.var.html#dask.array.var), [`Dataset.var`](xarray.Dataset.var.html.md#xarray.Dataset.var), [`DataArray.var`](xarray.DataArray.var.html.md#xarray.DataArray.var)

[Aggregation](../user-guide/computation.html.md#agg)
: User guide on reduction or aggregation operations.

### Notes

Non-numeric variables will be removed prior to reducing. datetime64 and timedelta64 dtypes are treated as numeric for aggregation operations.

### Examples

<div class="try_examples_button_container"><button class="try_examples_button" onclick="window.tryExamplesShowIframe('413cf32c-1ed3-4fac-8e23-985aeb99e72b','821b03f7-bd3b-4bed-8894-1297cbfc2f23','886449e0-ee33-447b-a89f-9ec0644b6ae6','../lite/tree/../notebooks/index.html?path=581b3d4a_f5b9_47c2_b09d_48c9e63d6480.ipynb','None')">Try it in your browser!</button></div>
```pycon
>>> from xarray.namedarray.core import NamedArray
>>> na = NamedArray("x", np.array([1, 2, 3, 0, 2, np.nan]))
>>> na
<xarray.NamedArray (x: 6)> Size: 48B
array([ 1.,  2.,  3.,  0.,  2., nan])
```

```pycon
>>> na.var()
<xarray.NamedArray ()> Size: 8B
array(1.04)
```

Use `skipna` to control whether NaNs are ignored.

```pycon
>>> na.var(skipna=False)
<xarray.NamedArray ()> Size: 8B
array(nan)
```

Specify `ddof=1` for an unbiased estimate.

```pycon
>>> na.var(skipna=True, ddof=1)
<xarray.NamedArray ()> Size: 8B
array(1.3)
```

<div id="886449e0-ee33-447b-a89f-9ec0644b6ae6" class="try_examples_outer_iframe  hidden"><div class="try_examples_button_container"><button class="try_examples_button" onclick="window.tryExamplesHideIframe('413cf32c-1ed3-4fac-8e23-985aeb99e72b','886449e0-ee33-447b-a89f-9ec0644b6ae6')">Go Back</button><button class="try_examples_button" onclick="window.openInNewTab('413cf32c-1ed3-4fac-8e23-985aeb99e72b','886449e0-ee33-447b-a89f-9ec0644b6ae6')">Open In Tab</button></div><div id="821b03f7-bd3b-4bed-8894-1297cbfc2f23" class="jupyterlite_sphinx_iframe_container"></div></div><script>document.addEventListener("DOMContentLoaded", function() {window.loadTryExamplesConfig("../try_examples.json");});</script>
