How to group elements in arrays?
4 次查看(过去 30 天)
显示 更早的评论
Let's say I have a 1 x 5 structure array, 'data' with fields 'f1' 'f2' 'f3' 'f4' 'f5'. What I am trying to do is to group the elements of the array in f1 three by three, and find the corresponding mean of the elements in f2 - f5. Can anyone help me to do this? Thanks!
2 个评论
Murali Krishna
2015-5-28
can you clarify what do u mean by "group the elements of the array in f1 three by three"
采纳的回答
Murali Krishna
2015-5-28
编辑:Murali Krishna
2015-5-28
I think this may solve ur problem
m=floor(length(data(1).f1)/3)
for l=1:1:length(data)
t=0;
for k=1:1:m
s1(l).a(k)=mean(data(l).f1(1+t:3+t));
s1(l).b(k)=mean(data(l).f2(1+t:3+t));
t=t+3;
end
end
I assume that the length of the fields f1 to f5 is same. check for structure s1.a,s1.b...for the mean of 3 elements of respective fields..
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!