how to find and replace corresponding matri

a1{:}
ans =
73.3333 50.0000
66.6667 50.0000
ans =
Empty matrix: 0-by-2
ans =
Empty matrix: 0-by-2
ans =
Empty matrix: 0-by-2
ans =
Empty matrix: 0-by-2
ans =
Empty matrix: 0-by-2
i need to find index for non zero cell array, and convert in into mat.

Answers (3)

idx=celfun(@isempty,a1)
a1(idx)=[]
out=cell2mat(a1)
Guillaume
Guillaume on 19 May 2016
Edited: VBBV on 26 Jul 2023
idx = find(~cellfun(@isempty, a1)); %index of non empty cell
assert(numel(idx) == 1, 'There are more or less than 1 empty cell')
out = a1{idx}; %get content of cell, which is a matrix in your case

Categories

Asked:

on 19 May 2016

Edited:

on 26 Jul 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!