Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私はセル配列を持っています、
a=cell(2,1); a{1,1}=[1 2 3]; a{2,1}=[4 5];
のフィールドの長さの合計を計算する必要があります。aつまり、答えは3+2=5。これはforループを使用して行うことができます、
a
3+2=5
for
sum=0; for i=1:size(a,1) sum = sum + size(a{i},2); end
しかし、ループのない1行のコマンドが必要です。何かご意見は?
ワンライナーの場合は、cellfun
cellfun
sum(cellfun(@length,a))
cellfunlengthの各要素にコマンドを適用してから、出力aをsum追加します。
length
sum
あなたはこれを行うことができます:
length( [ a{:} ] )