0

私は2つの座標をリンクしてマッピングに取り組んでおり、データベースは巨大です。したがって、私は自分が行ったことに関する作業の一部のみを表示します。

質問: スタート番号とストップ番号を足し合わせたいのですが。1,000,000を超える場合、距離は100になります。それ以外の場合、距離は変更されません。次に、それを単一の配列に格納したいと思います。

本当にあなたの応答に感謝します。ありがとう :)

コーディング

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

変数NのExcelデータサンプル

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
4

1 に答える 1

1

最初に列1と2を合計し、結果を次の場所に格納しSumMatrixます。

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

次に、論理アドレスを使用して、のすべての値> 1000000をに置き換えます。SumMatrix100

SumMatrix(SumMatrix > 1000000) = 100;
于 2012-06-05T04:14:36.070 に答える