@@ -597,6 +597,59 @@ def quantile(self, q, dim=None, interpolation="linear", keep_attrs=None):
597597 --------
598598 numpy.nanpercentile, pandas.Series.quantile, Dataset.quantile,
599599 DataArray.quantile
600+
601+ Examples
602+ --------
603+
604+ >>> da = xr.DataArray(
605+ ... [[1.3, 8.4, 0.7, 6.9], [0.7, 4.2, 9.4, 1.5], [6.5, 7.3, 2.6, 1.9]],
606+ ... coords={"x": [0, 0, 1], "y": [1, 1, 2, 2]},
607+ ... dims=("y", "y"),
608+ ... )
609+ >>> ds = xr.Dataset({"a": da})
610+
611+ Single quantile
612+ >>> da.groupby("x").quantile(0)
613+ <xarray.DataArray (x: 2, y: 4)>
614+ array([[0.7, 4.2, 0.7, 1.5],
615+ [6.5, 7.3, 2.6, 1.9]])
616+ Coordinates:
617+ quantile float64 0.0
618+ * y (y) int64 1 1 2 2
619+ * x (x) int64 0 1
620+ >>> ds.groupby("y").quantile(0, dim=...)
621+ <xarray.Dataset>
622+ Dimensions: (y: 2)
623+ Coordinates:
624+ quantile float64 0.0
625+ * y (y) int64 1 2
626+ Data variables:
627+ a (y) float64 0.7 0.7
628+
629+ Multiple quantiles
630+ >>> da.groupby("x").quantile([0, 0.5, 1])
631+ <xarray.DataArray (x: 2, y: 4, quantile: 3)>
632+ array([[[0.7 , 1. , 1.3 ],
633+ [4.2 , 6.3 , 8.4 ],
634+ [0.7 , 5.05, 9.4 ],
635+ [1.5 , 4.2 , 6.9 ]],
636+
637+ [[6.5 , 6.5 , 6.5 ],
638+ [7.3 , 7.3 , 7.3 ],
639+ [2.6 , 2.6 , 2.6 ],
640+ [1.9 , 1.9 , 1.9 ]]])
641+ Coordinates:
642+ * y (y) int64 1 1 2 2
643+ * quantile (quantile) float64 0.0 0.5 1.0
644+ * x (x) int64 0 1
645+ >>> ds.groupby("y").quantile([0, 0.5, 1], dim=...)
646+ <xarray.Dataset>
647+ Dimensions: (quantile: 3, y: 2)
648+ Coordinates:
649+ * quantile (quantile) float64 0.0 0.5 1.0
650+ * y (y) int64 1 2
651+ Data variables:
652+ a (y, quantile) float64 0.7 5.35 8.4 0.7 2.25 9.4
600653 """
601654 if dim is None :
602655 dim = self ._group_dim
0 commit comments