Azzera filtri
Azzera filtri

Find empty cells in 3D cell?

3 visualizzazioni (ultimi 30 giorni)
Sharif Khalil
Sharif Khalil il 2 Ott 2019
I have a 3D cell RowXColXDep (12X125X1216), I want to find the empty cells (which row, column, and depth). I used:
[Row Col Dep] = find(cellfun(@isempty,channelResp));
but it did not work, it works only for 2D cells. Is there a solution for 3D cells?
Thanks in advance

Risposta accettata

Shubham Gupta
Shubham Gupta il 3 Ott 2019
Try this:
[r,c] = find(cellfun(@isempty,channelResp));
[nR,nC,nD] = size(channelResp);
Dep = floor(c/nC-0.0001)+1;
Col = c - nC*(Dep-1);
Row = r;
Let me know if you have doubts.
  2 Commenti
Sharif Khalil
Sharif Khalil il 3 Ott 2019
Thank you, it worked!
Shubham Gupta
Shubham Gupta il 3 Ott 2019
I am glad I could help. Please, make sure to accept the answer if it solves your problem. Cheers

Accedi per commentare.

Più risposte (1)

Stephen23
Stephen23 il 3 Ott 2019
Modificato: Stephen23 il 3 Ott 2019
The simple MATLAB solution is to use ind2sub. First lets create some fake data:
>> A = repmat({NaN},12,125,1216);
>> A(5,23,[2,4,8]) = {[]}; % empty
Then all you need is this:
>> [R,C,P] = ind2sub(size(A),find(cellfun('isempty',A)))
R =
5
5
5
C =
23
23
23
P =
2
4
8

Categorie

Scopri di più su Environment and Settings 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!

Translated by