XrDiscreteRV.rvs

XrDiscreteRV.rvs(*args, size=None, random_state=None, dims=None, coords=None, apply_kwargs=None, **kwargs)

Method wrapping .rvs of the input distribution with xarray.apply_ufunc

Usage examples available at Probability distributions.

Parameters:
*argsscalar or array_like or xarray.DataArray, optional

Passed to the scipy distribution after broadcasting.

sizeint of sequence of int, optional

The number of samples to draw per array element. If the distribution parameters broadcast to a (4, 10, 6) shape and size=(5, 3) then the output shape is (5, 3, 4, 10, 6). This differs from the scipy implementation. Here, all broadcasting and alignment is done for you, you give the dimensions the right names, and broadcasting just happens. If size followed scipy behaviour, you’d be forced to broadcast to provide a valid value which would defeat the xarray_einstats goal of handling all alignment and broadcasting for you.

random_stateint or np.Generator, optional

Passed as is to the wrapped scipy distribution

dimshashable or sequence of hashable, optional

Dimension names for the dimensions created due to size. If present it must have the same length as size.

coordsmapping of {hashablearray_like or xarray.DataArray}, optional

Mapping of coordinate name to coordinate values.

apply_kwargsdict, optional

Passed to xarray.apply_ufunc

**kwargs

Passed to the scipy distribution after broadcasting using the same key.

Returns:
xarray.DataArray