раскрасить#
- Ковариация.раскрасить(x)[источник]#
Выполнить преобразование раскраски данных.
«Раскрашивание» («цвет» как в «цветном шуме», где разные частоты могут иметь разные амплитуды) преобразует набор некоррелированных случайных величин в новый набор случайных величин с желаемой ковариацией. Когда преобразование раскрашивания применяется к выборке точек, распределённых согласно многомерному нормальному распределению с единичной ковариацией и нулевым средним, ковариация преобразованной выборки приблизительно равна ковариационной матрице, используемой в преобразовании раскрашивания.
- Параметры:
- xarray_like
Массив точек. Последнее измерение должно соответствовать размерности пространства, т.е. количеству столбцов в ковариационной матрице.
- Возвращает:
- x_array_like
Преобразованный массив точек.
Ссылки
[1]“Whitening Transformation”. Wikipedia. https://en.wikipedia.org/wiki/Whitening_transformation
[2]Новак, Лукаш и Мирослав Вореховский. «Обобщение линейного преобразования раскраски». Transactions of VSB 18.2 (2018): 31-35. DOI:10.31490/tces-2018-0013
Примеры
>>> import numpy as np >>> from scipy import stats >>> rng = np.random.default_rng() >>> n = 3 >>> A = rng.random(size=(n, n)) >>> cov_array = A @ A.T # make matrix symmetric positive definite >>> cholesky = np.linalg.cholesky(cov_array) >>> cov_object = stats.Covariance.from_cholesky(cholesky) >>> x = rng.multivariate_normal(np.zeros(n), np.eye(n), size=(10000)) >>> x_ = cov_object.colorize(x) >>> cov_data = np.cov(x_, rowvar=False) >>> np.allclose(cov_data, cov_array, rtol=3e-2) True