本文作者:office教程网

MATLAB实现Excel中lookup函数查找匹配功能

office教程网 2024-07-05 16:40:51
后台-系统设置-扩展变量-手机广告位-内容正文顶部
摘要:

在Excel中的lookup函数很容易可以实现以下功能:根据左侧序号对应的姓名匹配右侧相同序号的姓名。

现在小编就在琢磨能不能用matlab实现Excel的lookup匹配查找的功能,以下是小编写的功能函数lookup

function Result_data=Lookup(x,y,xdata)    % x为需要查找的    % y为x查找的范围数据    %xdata为当x=y时候,所匹配的数据,x和xdata数据是对应的    %声明空间    index_x=zeros(1,length(x));    index_y=zeros(1,length(x));    data=num2cell(zeros(length(y),2)*NaN);    for i=1:length(x)        for j=1:length(y)            if isequal(x(i),y(j))                index_x(i)=i;                index_y(i)=j;            end        end    end    index_x(find(index_x==0))=[];    index_y(find(index_y==0))=[];    data(:,1)=y;    for n=1:length(index_x)%子集长度 %        data(index_y(n),2)=x(index_x(n));       data(index_y(n),2)=xdata(index_x(n));    end    Result_data=data;end

读入Excel数据

Lookup函数最经典的公式

Lookup函数是最牛的Excel查找函数,特别是lookup(1,0/)模式横扫无数查找难题,比如反向查找、多条件查找、查找最后一个等。但,绝大多数用户只会套用,却不懂其中的原理。 小编搜遍百度,也没有找到一个能明白的教程,所以小编必须要写一个详细的教程了。 首先,先看一下lookup函数的一个查找特性: 给一

clear,clc;[Num,TxT,Raw]=xlsread(‘data.xlsx’);result=Lookup(Raw(:,4),Raw(:,1),Raw(:,5))

显示处理结果:

很容易看出数据匹配。

特别说明:Lookup(x,y,xdata)中的y必须是升序或者降序排列,不能为乱序排列,否则会出现匹配错误。

学会LOOKUP函数这个高级用法,多条件查询就很容易了!

如下表,是某快递公司价格表,每当查询价格时,会涉及很多条件,始发地、目的地、重量区域等,在全部条件判断完之后,还得与最低价进行比较,取两者之间的最大值。 价格表如下: 查询表如下: 举例,始发地为义乌,目的地是北京,重量为1680.57,对应价格为1.6。金额为:=1680.57*1.6,算出金额之后,再

后台-系统设置-扩展变量-手机广告位-内容正文底部
未经允许不得转载:

作者:office教程网,原文地址:MATLAB实现Excel中lookup函数查找匹配功能发布于2024-07-05 16:40:51
转载或复制请以超链接形式并注明出处 演示站

分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

留言与评论(共有 0 条评论)
   
验证码: