Finding a variable in a large table
Afficher commentaires plus anciens
I'm quite a novice to MATLAB so apologies for any language I may use which may be confusing
I have a 2570x16 sized table, which relates to data about every UK train station, i.e. usage statistics, I have written a menu function which allows the selected station to become a string, what do I need to do so that the Station can be found in the name column, and then this can be used to recall the other 15 parts of data about the station?
Many thanks
Réponse acceptée
Plus de réponses (2)
Here's a simple example, which I think you could extend to your situation
% make an example table
name = {'fish','cat','dog','cat','mouse','mouse','fish','cat'}'
weight = [0.8, 1.3, 2.2, 1.1, 0.2, 0.3, 0.9, 1.4]'
bodyLength = [102,503,608, 429,15,18, 154,496]'
T = table(name,weight,bodyLength)
% get the weights and lengths of all of the cats
idl = strcmp('cat',T.name);
Tcat = T(idl,:) % a table with just cat data
% or if you just want the weight of the fish
idl = strcmp('fish',T.name);
wFish = T.weight(idl)
Bora Eryilmaz
le 8 Déc 2022
Modifié(e) : Bora Eryilmaz
le 8 Déc 2022
% Create a table
T = table;
T.Name = ["London"; "Paris"];
T.Data1 = {15; 20};
T.Data2 = {-1; 2};
T
% Find index of Name
I = strcmp(T.Name, 'Paris');
% Find data for that Name
T{I,:}
% or, extract data as its own 1-row table
T(I,:)
Catégories
En savoir plus sur Data Type Identification dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!