# MATLAB: If a value in one matrix matches that in another matrix, how to assign the same index number

align valuesassign values

I have a matrix with a list of latitude and longitude coordinates (64,800×3). Each latitude and longitude pair have their own index number.
Ex.
[Index    Lat     Lon; 10521    -45.5    50.5; 10522    -45.5    51.5; 10523    -45.5    52.5]
I have another matrix with a list of latitude and longitude numbers, but no index numbers. Also, this matrix is not the same size as the previous matrix. (250×2; It has Lat and Lon only, no index number yet.)
I want to write a script that will examine the pairs of latitude and longitude coordinates for each matrix. When there is a pair that matches between the matrices, it would assign the same index number to the second matrix from the first matrix.

origMat =   [10521    -45.5    50.5;             10522    -45.5    51.5;             10523    -45.5    52.5];newMat =   [0    -45.5    52.5;            0    -45.5    52.5;            0    -45.5    51.5;            0    -45.5    50.5];% Loop through the new matrixfor ii = 1:size(newMat,1)   % Find the index location where 2nd and 3rd column match   idxLocation = origMat(:,2)==newMat(ii,2) & ...                  origMat(:,3)==newMat(ii,3);     % If valid, set the index number (1st column) of the new matrix   if ~isempty(idxLocation)        newMat(ii,1) = origMat(idxLocation,1);   endendformat short gnewMat
newMat =        10523        -45.5         52.5        10523        -45.5         52.5        10522        -45.5         51.5        10521        -45.5         50.5