将与301行结构,每个包含一个36 x1目标信息,与301个索引结构和36列目标信息,您可以使用下面的代码:
%假设原始结构被称为“struct_with_301_rows”
% Preallocate 36场结构
struct_with_36_columns =结构(“目标”、细胞(36岁,1));
%循环每一行的原始结构
为i = 1:元素个数(struct_with_301_rows)
%得到这一行的目标信息
target_info = struct_with_301_rows .Target;
%循环的目标信息,并将其分配给每个元素
%的相应字段的新结构
为j = 1:元素个数(target_info)
struct_with_36_columns (j)。(sprintf (“Target_ % 03 d '我))= target_info (j);
结束
结束
这将创建一个新的结构
struct_with_36_columns
36个字段,每个包含目标信息为所有301行。字段名称自动生成和遵循的格式
Target_XXX
,在那里
XXX
是原始结构的索引行(如。
Target_001
,
Target_002
等)。请注意,如果你原来的结构体包含字段以外
目标
相应地,您将需要修改代码。