How can I replace a pair of coordinates (x;y) in a table by values from a list of reference coordinates?
5 次查看（过去 30 天）
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
Antoni Garcia-Herreros 2023-4-12
You can try something like this:
However, I did not find any X, Y pair of values present in both len and IHC.
len = readmatrix('SAMPL01_R.xlsx','Sheet','len');
IHC = readmatrix('SAMPL01_R.xlsx','Sheet','IHC');
OHC = readmatrix('SAMPL01_R.xlsx','Sheet','OHC');
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
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
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
OHCMat=OHC(OHC(:,5)>0,:); % Create the matrix with only the matching values
Let me know if that helps,