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

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

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

文章插图
【MATLAB实现Excel中lookup函数查找匹配功能】现在小编就在琢磨能不能用matlab实现Excel的lookup匹配查找的功能,以下是小编写的功能函数lookup
function Result_data=https://www.i8ku.com/2021/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;endendendindex_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));endResult_data=data;end
读入Excel数据
clear,clc;[Num,TxT,Raw]=xlsread(‘data.xlsx’);result=Lookup(Raw(:,4),Raw(:,1),Raw(:,5))
显示处理结果:
MATLAB实现Excel中lookup函数查找匹配功能

文章插图
很容易看出数据匹配 。
特别说明:Lookup(x,y,xdata)中的y必须是升序或者降序排列,不能为乱序排列,否则会出现匹配错误 。

    推荐阅读