why ismember() does not return correct result
7 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Stavros Tsimpoukis
il 10 Ott 2023
Commentato: Dyuman Joshi
il 11 Ott 2023
Hello, I have an original matrix M ( Nx3 ) and another one mat ( Kx3 ). I want to have access to the indicies of rows of the original matrix, M, where the rows of the matrix mat also exist in matrix M. My code is:
idx = find(ismember(M, mat, "rows"))
While most of the rows of mat are correctly returned some rows do not. The common theme is that all of them have the third element equal (1.6).
The array mat:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1507664/image.png)
Rows of array M: ( the row [-2.5 1.65 1.6] exists in the array ! )
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1507669/image.png)
Is this a floating point problem ?
Thanks
Risposta accettata
Star Strider
il 10 Ott 2023
They may have very small values that are not shown, especially if they are calculated.
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Cell Arrays in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!