MATLAB: Deleting [ ] from a matrix

matrix manipulation

'gene1' [] 'u' 'u' 'd'
'gene2' 'u' 'u' [] 'u'
'gene3' [] 'u' 'd' []
'gene4' 'd' 'u' 'd' 'd'}
in this matrix [] must be deleted and output as
'gene1' 'u' 'u' 'd'
'gene2' 'u' 'u' 'u'
'gene3' 'u' 'd'
'gene4' 'd' 'u' 'd' 'd'
is it possible please help

Best Answer

d ={'gene1' [] 'u' 'u' 'd'
'gene2' 'u' 'u' [] 'u'
'gene3' [] 'u' 'd' []
'gene4' 'd' 'u' 'd' 'd'}
out = cellfun(@(x)x(~cellfun(@isempty,x)),num2cell(d,2),'un',0);