How i can convert cell (each element in cell with different length) to array?

1 回表示 (過去 30 日間)
Ameer Kadhim
Ameer Kadhim 2018 年 6 月 1 日
編集済み: Stephen23 2018 年 6 月 1 日
hello everybody how I can convert this cell to array such that I want each element in cell in row in array
ex = {[1,2,4,5,7,11,12],[1,3,4,5,7,11,12],[1,2,4,6,5,7,11,12],[1,3,4,6,5,7,11,12],[1,2,4,5,8,13,7,11,12],[1,3,4,5,8,13,7,11,12],[1,2,4,6,5,8,13,7,11,12],[1,3,4,6,5,8,13,7,11,12]};
  1 件のコメント
Stephen23
Stephen23 2018 年 6 月 1 日
編集済み: Stephen23 2018 年 6 月 1 日
Simpler solution: download Jos' FEX submssion padcat, and use it like this:
padcat(ex{:})

サインインしてコメントする。

採用された回答

Anton Semechko
Anton Semechko 2018 年 6 月 1 日

Is this kind of what you are looking for?

ex = {[1,2,4,5,7,11,12],[1,3,4,5,7,11,12],[1,2,4,6,5,7,11,12],[1,3,4,6,5,7,11,12],[1,2,4,5,8,13,7,11,12],[1,3,4,5,8,13,7,11,12],[1,2,4,6,5,8,13,7,11,12],[1,3,4,6,5,8,13,7,11,12]};
n=numel(ex);
N=zeros(n,1);
for i=1:n
    N(i)=numel(ex{i});
    ex{i}=ex{i}(:)';
end
if min(N)<max(N)
    dN=max(N)-N;        
    for i=1:n
        if dN(i)>0
            ex{i}=cat(2,ex{i},nan(1,dN(i)));
        end
    end
end
ex=cell2mat(ex(:));
disp(ex)

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeData Types についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by