matlab find的用法和指针的使用

different_proxy_whole = [];
    for depth_num =1:length(proxies.adinos)
        proxies.adinos(find(isnan(proxies.adinos)==1)) = 0;
        proxies.hdinos(find(isnan(proxies.hdinos)==1)) = 0;
        proxies.aother(find(isnan(proxies.aother)==1)) = 0;   % 将nan换成0
        proxy_max = max([proxies.hdinos(depth_num),proxies.adinos(depth_num),proxies.aother(depth_num)]);
        proxy_min = min([proxies.hdinos(depth_num),proxies.adinos(depth_num),proxies.aother(depth_num)]);
        new_combination = [proxies.hdinos(depth_num),proxies.adinos(depth_num),proxies.aother(depth_num)];
        max_idx = find(new_combination==proxy_max);
        min_idx = find(new_combination==proxy_min);
        proxy_next_max = setdiff(new_combination, [max_idx(1) min_idx(1)]);
        different_proxy = proxy_max - proxy_next_max;    % 计算每个深度的优势藻种,用最大值减去次大值
        different_proxy_whole = [different_proxy_whole,different_proxy];
    end

将数组(double)中的nan值换成0,使用find

A(find(isnan(A)==1))=0;

找到数组中的某个值所在的位置:

idx=find(A==number);

如果是字符串则:

idx=find(strcmp(A, 'string' ));

剔除数组中指针所指的元素:

B=setdiff(A,[idx1,idx2]);

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值