Delete row from cell array if the difference between two cells is greater then X
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
I have a cell array JFM06CS(88x4). I want to delete the row if the difference between column 4 and 2 is greater than 6.5. Attached is the file and I tried the following code.
rowToDelete = [JFM06CS{:,4} - JFM06CS{:,2}] > 6.5;
0 Commenti
Risposta accettata
Guillaume
il 5 Lug 2016
You nearly got it right:
rowToDelete = [JFM06CS{:,4}] - [JFM06CS{:,2}] > 6.5;
I would transpose the output to get a column vector.
Alternatively:
rowToDelete = diff(cell2mat(JFM06CS(:, [2 4])) > 6.5;
1 Commento
Thorsten
il 5 Lug 2016
And to actually delete the row, use
JFM06CS(rowToDelete,:) = [];
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Logical 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!