MATLAB:将rx_bs的每个元素与阈值0.50进行比较

MATLAB:将rx_bs的每个元素与阈值0.50进行比较,matlab,Matlab,问题:创建一个大小为1×20的随机数向量,并将其命名为rx\u bs。将rx_bs的每个元素与阈值0.50进行比较。如果元素的值大于0.5,则返回值1,否则返回0。因此,您将获得另一个1x20向量,将其命名为bs 我的答覆是: rx_bs=rand(1,20); threshold_c=0.5; bs=[1:20]; for i=1:length(rx_bs) if rx_bs(i)>threshold_c bs(i)=1; end if rx_bs

问题:创建一个大小为1×20的随机数向量,并将其命名为
rx\u bs
。将
rx_bs
的每个元素与阈值0.50进行比较。如果元素的值大于0.5,则返回值1,否则返回0。因此,您将获得另一个1x20向量,将其命名为
bs

我的答覆是:

rx_bs=rand(1,20);
threshold_c=0.5;
bs=[1:20];
for i=1:length(rx_bs)
    if rx_bs(i)>threshold_c
        bs(i)=1;
    end
    if rx_bs(i)<threshold_c
        bs(i)=0;
    end
end
rx_bs
bs
rx_bs=rand(1,20);
阈值_c=0.5;
bs=[1:20];
对于i=1:长度(rx_-bs)
如果rx_bs(i)>阈值_c
bs(i)=1;
结束

如果rx_bs(i),我必须在您的代码中添加一个额外的
end
,以使其有效。这能起作用吗?你能解释一下问题是什么吗?另外,一个更简单的解决方案是
bs=rs_bx>0.5
。增加一个额外的结尾,也许适当地打算这样做真的很有帮助!:)