How can I convert a matrix into a dissimilarity matrix??
조회 수: 12 (최근 30일)
이전 댓글 표시
I have a matrix with so many negative and non-negative values of dimension 54x16063. Can i convert this matrix into a dissimilarity matrix??.... How??
댓글 수: 0
답변 (1개)
Taro Ichimura
2016년 6월 19일
Hello, The Matlab help on this matter is extremely poorly described... you can use the function pdist and squareform. If you have a matrix X, then use
D = pdist(X)
which convert your matrix into a 1x (n(n-1)/2) (its a vector). Several option of metric are available such as Euclidian or correlation (see pdist help).
IF you need to visualize the Dissimilarity matrix, then use the function squareform to put it back in a square form with a diagonal, typically of dissimilarity matrix. then you can plot(D).
If you need to do Pearson correlation then dissimilarity matrix, you can do: corr(X), then do (matrix of 1)-(Pearson matrix), because Pearson corr is already a measure of similarity.
Hope that helps,
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Statistics and Machine Learning Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!