how to do subtraction inside Structure
17 views (last 30 days)
Show older comments
1xN Structure call Structure.result Structure(1).result=1x5 Array ,[ 1 2 3 4 5]
Structure(2).result=1x7 Array,[1 2 3 4 5 6 7]
How to do Structure(2).result -Structure(1).result
I mean Every element inside Structure(2) - every structure inside Structure(1)
I tried
Structure(2).result(1:7) - Structure(1).result(1:5)
But it won't work.
Is it a must to write a loop? like
for i=1:5
Structure(2).result(1:7) - Structure(1).result(i)
end
Actually, what I want to do is that
1xN Structure call Structure.result
for i= 1:N
Structure(i).result=1x5 Array ,[ 1 2 3 4 5]
I want to find every array contained inside the structure - every array there EG (Structure(1).result=1x5 Array ,[ 1 2 3 4 5]-
Structure(i).result=1x7 Array,[1 2 3 4 5 6 7])
and find the any number == 10;
if number =10
combine Struct(1)and Struct (2)into New structure
and use the New struct to do the substraction
0 Comments
Answers (2)
Azzi Abdelmalek
on 13 Aug 2014
Edited: Azzi Abdelmalek
on 13 Aug 2014
Edit
a=struct('result',{1:5,1:7})
b=struct('result',num2cell(bsxfun(@minus,a(1).result',a(2).result)))
Pratik Bajaria
on 13 Aug 2014
Well Technically its not possible. You are trying to subtract 1x5 from 1x7 array, which is violation of dimensionality. As a workaround, what you can do is the idea of padding dummy numbers like zeros to 1x5 and make it a 1x7 array/vector and then probably subtraction should work. I hope this helps.
Please let me know in case of further doubts.
Regards, Pratik
3 Comments
Azzi Abdelmalek
on 14 Aug 2014
Patrick, padding with zeros is not what Tabw is asking for, and our solutions are completely different.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!