check_symmetric#
- sklearn.utils.validation.check_symmetric(array, *, tol=1e-10, raise_warning=True, raise_exception=False)#
确保数组是二维的、方形的和对称的。
如果数组不对称,则返回对称版本。 如果矩阵不对称,可以选择发出警告或异常。
- Parameters:
- array{ndarray, sparse matrix}
输入对象以检查/转换。必须是二维和方形的,否则会引发ValueError。
- tolfloat, default=1e-10
数组等价的绝对容差。默认 = 1E-10。
- raise_warningbool, default=True
如果为True,则在需要转换时发出警告。
- raise_exceptionbool, default=False
如果为True,则在数组不对称时引发异常。
- Returns:
- array_sym{ndarray, sparse matrix}
输入数组的对称版本,即数组和数组转置的平均值。如果是稀疏的,则首先对重复条目求和并消除零。
Examples
>>> import numpy as np >>> from sklearn.utils.validation import check_symmetric >>> symmetric_array = np.array([[0, 1, 2], [1, 0, 1], [2, 1, 0]]) >>> check_symmetric(symmetric_array) array([[0, 1, 2], [1, 0, 1], [2, 1, 0]]) >>> from scipy.sparse import csr_matrix >>> sparse_symmetric_array = csr_matrix(symmetric_array) >>> check_symmetric(sparse_symmetric_array) <3x3 sparse matrix of type '<class 'numpy.int64'>' with 6 stored elements in Compressed Sparse Row format>