2015-04-09 2 views
0

В MATLAB у меня есть следующее:Корреляция между тремя переменными в MATLAB

A, B, C - 1 x 101 ряд векторов. Я знаю, что для «i» от 1 до 101 A (i), B (i) и C (i) линейно коррелируют.

Как определить зависимость между A, B и C?

+2

Um, я не хотят звучать глупо, но как насчет того, чтобы соотнести друг друга друг с другом, набрав вам матрицу 3x3 с коэффициентами автокорреляции по диагонали? –

ответ

3

Для степени корреляции, вы можете использовать corrcoef:

data = [A(:) B(:) C(:)]; 
correlation = corrcoef(data); 

Вот тест, который показывает положительную/отрицательную корреляцию, а также степень корреляции с

N = 10000; 
A = randn(N,1); 
B = 3*A + randn(N,1); 
C = -2*A + 20*randn(N,1); 

correlation = 

    1.0000 0.9473 -0.1005 
    0.9473 1.0000 -0.0927 
    -0.1005 -0.0927 1.0000 
+0

Хорошо спасибо. Как я могу построить здесь линейную связь? corrcoef помогает, но мне не хватает статистического фона. –

+0

Отличные правки. Благодаря! –

+0

@arabhimanachra Я обновил свой ответ. Здесь коэффициент корреляции является более подходящей метрикой. Элемент '(i, j)' корреляции измеряет корреляцию переменной 'i' с vaeriable' j'. – eigenchris

Смежные вопросы