Info
This question is closed. Reopen it to edit or answer.
Complicated Matrix Data filtering
1 view (last 30 days)
Show older comments
Hi,
I need to 'filter' out some data out of a large spreadsheet. The spreadsheet consists of three colomns, X Y Z , and Device name. Those values are matched with a reference, the reference is found at the end of every 'group' of data.
What I want is (for example): if device B is found in the group (this is not always the case), then do reference minus data (Xref-X , Yref-Y Zref-Z).
I select the data with:
[filename, pathname] = uigetfile({'*.xls'},'File Selector');
[num, txt]=xlsread(filename);
X Y Z Device
-11.2 151.9 0.3 A
-11.3 150.2 -0.3 A
-11.4 151.8 1.5 B
-11 151.7 0 B
-11.4 149.9 0.1 C
-11.8 151.7 1.7 D
reference -11.6 150.6 -0.2
X Y Z Device
-9.5 154.2 -0.3 A
-9.1 155.5 -1.1 A
-9.4 155.6 0.5 B
-9.4 156.5 1.2 C
-9.2 156.4 -0.2 C
reference -9.1 155.1 0.1
0 Comments
Answers (2)
per isakson
on 26 Jan 2013
Edited: per isakson
on 26 Jan 2013
Try
[~,~,raw] = xlsread( fullfile( pathname, filename ) );
0 Comments
Image Analyst
on 26 Jan 2013
Beware that num and txt are not aligned! I'd recommend you use raw. Then use ismember() on the third column to find the desired letter, and do the math.
1 Comment
This question is closed.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!