필터 지우기
필터 지우기

corr2 return 1 for different value

조회 수: 2 (최근 30일)
khalida basheer
khalida basheer 2020년 9월 20일
댓글: khalida basheer 2020년 9월 21일
why when i use corr2 for different value in matlab return result=1 although the tow matrix not similar like this:-
aa
aa =
137.5093 1.9847
>> bb
bb =
141.2252 3.3757
>> corr2(aa,bb)
ans =
1

답변 (1개)

Ameer Hamza
Ameer Hamza 2020년 9월 20일
If you use only 2D vectors with corr2(), it is always possible to draw a line connecting two points, so the correction coefficient is always 1 or -1. You can verify this by simplifying the formula: https://www.mathworks.com/help/releases/R2020a/images/ref/corr2.html#f1-227958 for the case when x and y are 2D vectors.
  댓글 수: 8
Walter Roberson
Walter Roberson 2020년 9월 21일
If you try something like
[H,p] = ttest2(aa,bb)
you will get a p > 0.9 -- that is, if you treat the numbers as being a random distribution, there is more than a 90% chance that they come from the same random distribution.
The large value of the second feature dilutes the variation in the other features. If you take the correlation with the second feature removed, you will get a notably lower score. Perhaps you should rescale the second feature.
khalida basheer
khalida basheer 2020년 9월 21일
Sir Walter Roberson, actually the problem is the second feature, after deleting it and relying on other features, I got the acceptable result
thank you very much

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by