2012-06-05 3 views
0

2 개의 좌표를 연결하여 매핑 작업을하고 있는데 데이터베이스가 너무 큽니다. 따라서 나는 내가 한 일에 대해서만 작업의 일부를 보여줍니다.배열에 조건문을 추가하는 방법은 무엇입니까? - MATLAB

질문 : 시작을 추가하고 함께 수를 중지하고 싶은 . 1,000,000이 넘으면 100이됩니다. 그렇지 않으면 거리가 변하지 않습니다. 그런 다음 하나의 배열에 저장하고 싶습니다.

정말 감사드립니다. 감사 :)

변수 N에

clear; 
N = xlsread('RegionAll.xlsx',2); 
M = xlsread('RegionAll.xlsx',1); % List of Coordinates  
distance = distance(M(start,3:4), M(to,3:4)); % Coordinates 
distancekm = deg2km(distance); 
sum = N(:,1)+N(:,2); 

%Problem a below 
for l = 1:625 
    sum = N(l,1)+N(l,2); 
    if (sum>1000000) 
     a = 100; 
    else 
     a = distancekm(l,1); 
    end; 
end 

엑셀 데이터 샘플 코딩

Start Stop Distance  
13054 13055 0.017749628 
13055 13001 0.152363674 
560601 13043 0.063200318 
560601 13042 0.036090789 
560601 13041 0.021083981 
560601 13037 0.04975146 
560604 13031 0.047614849 
560604 13030 0.051513765 
560604 13029 0.076687991 
560604 560605 0.060676069 
560605 560606 0.046497332 

답변

1

먼저 합 컬럼 1 & 2 SumMatrix에 결과를 저장 :

SumMatrix = N(:,1) + N(:,2); 

는 다음 주소를 사용하여 논리에 의해 100SumMatrix 모든 값을 > 1000000 교체 :

SumMatrix(SumMatrix > 1000000) = 100; 
+0

감사합니다! 그것은 작동! :) – Kim

+0

당신은 환영합니다 :) – nrz

관련 문제