VLOOK UP Function for MatLab - Closest Match
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Cameron Hudspith
am 16 Okt. 2023
Kommentiert: Voss
am 16 Okt. 2023
Hello, I found the following answer by Jim Riggs which nearly solves a problem I've been having i MatLab. Essentially I need a function which performs this same task, but rather than finding data from col1 which is equal to val1, I need it to find the closest number in col1 to val 1 then return the value from col2.
Any recommendations are helpful!
"
You can make this into a function similar to Vlookup in Excel. For example:
Vlookup = @(data,col1,val1,col2) data((data(:,col1)==val1),col2);
The function Vlookup takes 4 arguments;
- data is the table of data
- col1 is the column you want to use to perform the lokup
- val1 is the value you want to look up (from col1).
- col2 is the column that you want to retrieve.
So, in my previous example, this would be
area = Vlookup(data, 1, 12, 2);
Look up from the "data" table, where column 1 has a value of 12, and return the value from column 2.
"
0 Kommentare
Akzeptierte Antwort
Voss
am 16 Okt. 2023
col1 = 1;
val1 = 12;
col2 = 2;
[~,idx] = min(abs(data{:,col1}-val1));
result = data{idx,col2};
2 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Tables finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!