How to assign a particular value to each element of a structure array for a particular field?

Lets say I have a structure array (S) with n elements and with a field (f). I know I can use function "deal" to assign the same value to all elements of S.f, e.g. [S.f] = deal(zero) will assign zero to all the n elements of S.f
However, what I am looking for is to assign a particular value to each element of S.f; e.g. is there a way to assign each element of r=rand(1,n) to the corresponding element in S.f, i.e. S(i).f = r(i)?
Thanks.

 採用された回答

Mohammad Abouali
Mohammad Abouali 2015 年 4 月 5 日
編集済み: Mohammad Abouali 2015 年 4 月 5 日
n=3;
%initilizing some test structure
s=struct('f',cell(n,1));
% generate r vector
r=mat2cell(rand(1,n),1,ones(n,1));
% now dealing r to s.f
[s.f]=deal(r{:});

2 件のコメント

Farzaneh
Farzaneh 2015 年 4 月 6 日
Thank you so much Mohammad :)
khahesh mikonam.

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeMultidimensional Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by