Effacer les filtres
Effacer les filtres

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

9 vues (au cours des 30 derniers jours)
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!

Réponse acceptée

Star Strider
Star Strider le 2 Avr 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 commentaires
drummer
drummer le 20 Jan 2024
@Star Strider, how would I do that but rather comparing cells?
Star Strider
Star Strider le 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).

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Cell Arrays dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by