Filter löschen
Filter löschen

Search for a value in a table and get the corresponding value from the 2nd column

9 Ansichten (letzte 30 Tage)
Hi guys,
I have a table of values and would like to search for a value and then get the corresponding value from the 2nd column. Can anyone help me with this problem?
Thanks a lot!

Akzeptierte Antwort

Star Strider
Star Strider am 2 Apr. 2023
If you are searching for an exact match, try something like this —
Col1 = linspace(0, 10, 21).';
Col2 = randn(numel(Col1),1);
T1 = table(Col1,Col2)
T1 = 21×2 table
Col1 Col2 ____ _________ 0 0.38307 0.5 -0.72796 1 1.4325 1.5 -2.2297 2 -0.3249 2.5 -0.065509 3 -1.1099 3.5 1.7075 4 -0.86512 4.5 -0.028325 5 1.4587 5.5 -2.3416 6 0.2667 6.5 0.060289 7 1.6819 7.5 0.077313
Val = 3;
Result = T1{Col1==Val,:}
Result = 1×2
3.0000 -1.1099
Other options, for example using ismember or ismembertol are also useful.
Much depends on the table and what you want to do. This is simply an illustration of the most obvious approach.
.
  2 Kommentare
Star Strider
Star Strider am 20 Jan. 2024
If the data are in a cell array, use cellfun with the appropriate function (for example isequal) or whatever is appropriate for your data (for example strcmp or its friends).

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Cell Arrays finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by