Checkin for equal values in the same column
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi
I have a matrix with measured GPS points. Column 1 are the point number, column 2-4 are X,Y,Z coordinates. The first step is to check if the point number is equal to the previous value in column 1. If the point number is the same, then i want to calculate the difference for the X,Y,Z coordinate. How do I do that? I have tried to use a loop, but it doesn't work after my intentions.
Original data:
A=[1 576872.757 6228394.988 3.461;
1 576872.762 6226395.008 3.460;
1 576872.766 6228394.982 3.453;
2 576851.856 6228358.766 3.844;
2 576851.872 6228358.756 3.820.......]
I want the output to look like this:
A=[ 1 0.010 0.027 0.010; %Difference between each coordinate and mean value for each point
1 0.025 0.010 0.035;
1 0.022 0.019 0.049;
2 0.010 0.027 0.038.............]
댓글 수: 3
채택된 답변
Andrei Bobrov
2019년 2월 21일
T = array2table(A);
m = varfun(@mean,T,'GroupingVariables',1);
out = A;
out(:,2:end) = out(:,2:end) - m{A(:,1),3:end};
댓글 수: 0
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!