How can I replace a pair of coordinates (x;y) in a table by values from a list of reference coordinates?
4 views (last 30 days)
Show older comments
Mathieu Petremann
on 12 Apr 2023
Commented: Mathieu Petremann
on 13 Apr 2023
Hi,
I need your help to create a short script.
I have two series of data in Excel with pixel coordinate one for x and one for y, in two columns, for all existing spots counted in every location of a sample.
I aslo have some reference values selected for every unique pair of coordinates also (X;Z) in two columns, plus two extra columns for the corresponding absolute position on the sample (Abs_Len) and the relative position (Rel_Len).
I would like to create a new matrix of two columns that replace every pair of x;y by the corresponding Abs_Len and Rel_Len according to the reference columns X;Y.
Thansk for your help
1 Comment
Accepted Answer
Antoni Garcia-Herreros
on 12 Apr 2023
Hello Mathieu,
You can try something like this:
However, I did not find any X, Y pair of values present in both len and IHC.
clear all
close all
len = readmatrix('SAMPL01_R.xlsx','Sheet','len');
IHC = readmatrix('SAMPL01_R.xlsx','Sheet','IHC');
OHC = readmatrix('SAMPL01_R.xlsx','Sheet','OHC');
for i=1:size(len,1)
x=len(i,3); % X value in len
y=len(i,4); % Y value in len
fIHC=find(ismember(IHC(:,3:4),[x,y],'rows')); % Find the indices where IHC is equal to X and Y
fOHC=find(ismember(OHC(:,3:4),[x,y],'rows')); % Find the indices where O is equal to X and Y
if ~isempty(fIHC)
for j=1:length(fIHC) % Loop through IHC indices
IHC(fIHC(j),5:6)=len(i,5:6); % Add len_mume and len_rel to IHC
end
end
if ~isempty(fOHC)
for j=1:length(fOHC) % Loop through OHC indices
OHC(fOHC(j),5:6)=len(i,5:6); % Add len_mume and len_rel to OHC
end
end
end
OHCMat=OHC(OHC(:,5)>0,:); % Create the matrix with only the matching values
IHCMat=IHC(IHC(:,5)>0,:);
Let me know if that helps,
More Answers (1)
See Also
Categories
Find more on Spreadsheets in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!