2017-02-17 1 views
0

Matlab에는 100 개의 혼돈 행렬이 있습니다. 예를 들어Matlab의 혼동 행렬의 최소 및 최대 값

confusionMatrix{1} =

16  1  0 
0 12  2 
0 10  9 

어떻게 최고와 최악의 예측 비율 (비 대각 요소의 합)가 이들 중 두 혼란 행렬을 찾을 수 있습니까?

넌 행렬 및 트랜스 모두 최대 변위 triu 이용하여 행렬 A의 비 - 대각 요소들을 식별 할 수

답변

1

: triu (A, 1) triu ('A, 1) :

sum(sum(triu(a,1)+triu(a',1)')) 

confusionMatrix {:}의 모든 셀에 대해 이렇게하려면 cellfun을 사용하고 다음을 정렬 할 수 있습니다.

prediction_rate=cellfun(@(a) sum(sum(triu(a,1)+triu(a',1)')), confusionMatrix); 
[r,idx]=sort(prediction_rate); 
best_rate=r(end); 
best_rated=idx(end); 
worst_rate=r(1); 
worst_rated=idx(1);