ordinalcorr.polyserial

ordinalcorr.polyserial(x: Sequence[float | int] | ndarray[float | int], y: Sequence[int] | ndarray[int]) float[source]

Estimate the polyserial correlation coefficient between a continuous variable x and an ordinal variable y using the two-step maximum likelihood estimation.

The polyserial correlation assumes that the ordinal variable y is a thresholded representation of latent continuous variable that follows a normal distribution.

Parameters:
  • x (array_like (float | int)) – Continuous variable.

  • y (array_like (int)) – Ordinal variable.

Returns:

Estimated polyserial correlation coefficient.

Return type:

float

Examples

>>> from ordinalcorr import polyserial
>>> x = [0.1, 0.1, 0.2, 0.2, 0.3, 0.3]
>>> y = [0, 0, 0, 1, 1, 2]
>>> polyserial(x, y)

References