numpy.linalg.svdvals#
- linalg.svdvals(x, /)[источник]#
Возвращает сингулярные значения матрицы (или набора матриц)
x. Когда x представляет собой стек матриц, функция вычислит сингулярные значения для каждой матрицы в стеке.Эта функция совместима с Array API.
Вызов
np.svdvals(x)для получения сингулярных значений совпадает сnp.svd(x, compute_uv=False, hermitian=False).- Параметры:
- x(..., M, N) array_like
Входной массив с формой (…, M, N), чьи последние два измерения образуют матрицы, для которых выполняется сингулярное разложение. Должен иметь тип данных с плавающей запятой.
- Возвращает:
- выходndarray
Массив с формой (…, K), содержащий вектор(ы) сингулярных значений длины K, где K = min(M, N).
Смотрите также
scipy.linalg.svdvalsВычисление сингулярных значений матрицы.
Примеры
>>> np.linalg.svdvals([[1, 2, 3, 4, 5], ... [1, 4, 9, 16, 25], ... [1, 8, 27, 64, 125]]) array([146.68862757, 5.57510612, 0.60393245])
Определение ранга матрицы с использованием сингулярных значений:
>>> s = np.linalg.svdvals([[1, 2, 3], ... [2, 4, 6], ... [-1, 1, -1]]); s array([8.38434191e+00, 1.64402274e+00, 2.31534378e-16]) >>> np.count_nonzero(s > 1e-10) # Matrix of rank 2 2