How to apply condition for using one variable as input for another in same workspace in matlab?
3 次查看(过去 30 天)
显示 更早的评论
I have two variable files which are a polyline file (network.mat) and a point file(sedsource.mat). The elements of the FID_Networ field of the sedsource file are subset of the FID_1 field in the network file. I am trying to use the elements of the sedsource file such that the common elements between the FID_1 of network and the FID_Networ field of sedsoucre file are assigned as 1 and the rest are assigned as 0. I tried to use the following code but wasn't successful. I would be grateful if anyone could help me with this.
Thank You
LinkNum = length(network)
input(1:LinkNum,:)=0;
b = [network.FID_1]';
a = [sedsource.FID_Networ]';
for i = 1:LinkNum
if a(i)==b(i)
input(1:LinkNum,:)=1;
else
input(1:LinkNum,:)=0;
end
end
2 个评论
Image Analyst
2020-12-25
input is a built-in function name. Don't use it as the name of your variable.
采纳的回答
Walter Roberson
2020-12-25
b = [network.FID_1];
a = [sedsource.FID_Networ];
network_is_in_sed = ismember(b, a);
input(1:LinkNum, :) = 0;
input(network_is_in_sed, :) = 1;
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Import and Export 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!