如何在数组中添加条件语句? - MATLAB

时间:2012-06-05 03:58:02

标签: arrays matlab matrix

我正在通过将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

1 个答案:

答案 0 :(得分:1)

第一个总和列1& 2,将结果存储在SumMatrix

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

然后使用逻辑地址将> 1000000中的所有值SumMatrix替换为100

SumMatrix(SumMatrix > 1000000) = 100;