converting an array of n symbolic variables to a cell array with n elements

1 回表示 (過去 30 日間)
Hi
Could somebody tell me a way to convert the symbolic array [ x, y , z ] to the 3 element cell array Cell, where Cell{1} = x, Cell{2} = y, etc? You would think it should be possible to do this with mat2cell, but this converts [ x, y, z ] to the a single element cell variable, i.e., Y = cell2mat([x,y,z]) returns T{1} = [ x,y,z].
Thanks!

採用された回答

Walter Roberson
Walter Roberson 2013 年 1 月 12 日
num2cell() rather than mat2cell()

その他の回答 (1 件)

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 1 月 12 日
編集済み: Azzi Abdelmalek 2013 年 1 月 12 日
syms x y z
a=[x y z]
for k=1:numel(a)
A{k}=a(k)
end
  2 件のコメント
Leo Simon
Leo Simon 2013 年 1 月 12 日
Thanks Azzi, was trying to do it without a loop, I hate loops on principle
José-Luis
José-Luis 2013 年 1 月 12 日
Loops are not always evil. They can make for clearer code and are sometimes faster than the vectorized alternative.

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

カテゴリ

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

Community Treasure Hunt

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

Start Hunting!

Translated by