我正在使用Floris'從此提示(find all indices of max values matlab)線程來實現類似的功能。這一直很好,但現在它已經不復存在了。在matlab中查找不返回任何索引的函數,即使向量包含選定的值
「首先,你找到的最大值,然後你發現所有相等的元素:」
m = max(myArray);
maxIndex = find(myArray == m);
「或使用變量名:」
maxChaqueCell = [4 5 5 4];
maximum = max(maxChaqueCell)
indicesDesMax = find(maxChaqueCell == maximum);
「這是你如何找到所有這些,而不僅僅是第一個。」
這是我的代碼:
%Choose only highest of pairs if two pairs
HV = max(MCOs)
%Find the indices of the dices to keep (Decide which dices to keep)
maxIndex = find(e == HV)
我想要做的顯然是得到索引數組所有HV在陣列電。然而,當我運行這段代碼時,我得到的只是一個空數組。見下文。
ans =
2 2 4 6 5
HV =
2
maxIndex =
[]
那麼我該怎麼辦?像我之前寫的那樣,它曾經工作過。我不確定我可能已經改變了什麼,但是當它停止工作時,我不記得修改了其他東西而不是輸入矢量(e)。據我所知,這應該沒有任何意義。
我試過重新啓動matlab沒有任何成功。
我會非常感謝任何答案。
/Spcaeyob
本聲明中的'e':'find(e == HV)'? – MrAzzaman
e是我想要從中獲取值的向量。對不起,我現在看到它在這裏被稱爲「ans」,但在我設置的腳本的早期版本e = ans – Spcaeyob