Автокорреляция каждого столбца матрицы в Matlab - PullRequest
0 голосов
/ 05 июня 2018

Мои данные включены в матрицу (dim: 900 x 10), называемую input_data_matrix, каждый столбец этой матрицы имеет 900 случайных сигналов временных рядов (целые значения светлых показаний).Я хочу вычислить соотношение (или корреляцию) между этими 900 показаниями одного и того же столбца (не корреляцию с показаниями других столбцов), чтобы я мог получить 10 значений результата корреляции, соответствующих 10 столбцам, которые указывают, сколько 900показания каждого столбца коррелируют,
Итак, мой вопрос заключается в том, как я могу вычислить это в Matlab и какой тип корреляции является лучшим для этого.

1 Ответ

0 голосов
/ 05 июня 2018

Если я правильно понял, вам нужна автокорреляция каждого столбца ваших входных данных.В этом случае я бы использовал функцию xcorr (https://es.mathworks.com/help/signal/ref/xcorr.html),, которая для данного вектора вычисляет его автокорреляцию. Код будет следующим:

[m, n] = size(input_data_matrix);
output_matrix = zeros(m, n);

for i = 1:n
  output_matrix(:,i) = xcorr(input_data_matrix(:,i));
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...