VLookup Multiple Conditions if statements
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
James
am 27 Mär. 2020
Bearbeitet: Adam Danz
am 31 Mär. 2020
Hi
I was wanting to modify this code to perform a VLookup on 2 columns and return the element of one of the correspoding column element in the same row?
Can someone please assist me on the if statements for this function?
Here is a function I found on Mathworks that I would like to modify: So instead of having one lookup column I need 2.
7 Kommentare
Akzeptierte Antwort
Adam Danz
am 27 Mär. 2020
Bearbeitet: Adam Danz
am 30 Mär. 2020
No need for a function.
See inline comments for details.
Matrices
% Define matrix
m = randi(3,2000,5);
% Define search variables
lookupValues = [1,3]; % values to search for in the two columns
lookupColumns = [2,3]; % two column numbers to search in
returnColumn = 1; % the column number used to return the output
% Compute outputs (same variable names as the function you shared)
index = ismember(m(:,lookupColumns), lookupValues, 'rows');
content = m(index, returnColumn);
Cell arrays
Look up the value of 2 in column 1 and 'Day' in column 2:
idx = [C{:,1}]'==2 & strcmpi(C(:,2), 'Day');
C(idx,3) % or [C{idx, 3}]
Tables
Look up the value of 2 in column 1 and 'Day' in column 2:
idx = [T{:,1}]==2 & strcmpi([T{:,2}], 'Day');
T(idx,3) % or [T{idx, 3}]
9 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Data Type Identification finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!