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 回答