scipy.spatial.distance.

is_valid_y#

scipy.spatial.distance.is_valid_y(y, warning=False, throw=False, name=None)[source]#

如果输入数组是有效的压缩距离矩阵,则返回 True。

压缩距离矩阵必须是一维 numpy 数组。 它们的长度必须是某个正整数 n 的二项式系数 \({n \choose 2}\)

参数:
yarray_like

压缩距离矩阵。

warningbool, optional

如果传递的变量不是有效的压缩距离矩阵,则调用警告。 警告消息解释了为什么距离矩阵无效。 当引用违规变量时,使用 name

throwbool, optional

如果传递的变量不是有效的压缩距离矩阵,则抛出异常。

namestr, optional

在警告或异常消息中引用违规变量时使用。

返回:
bool

如果输入数组是有效的压缩距离矩阵,则返回 True,否则返回 False。

示例

>>> from scipy.spatial.distance import is_valid_y

该向量是有效的压缩距离矩阵。 长度为 6,对应于 n = 4,因为 4*(4 - 1)/2 为 6。

>>> v = [1.0, 1.2, 1.0, 0.5, 1.3, 0.9]
>>> is_valid_y(v)
True

例如,长度为 7 的输入向量不是有效的压缩距离矩阵。

>>> is_valid_y([1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7])
False