equivalent of isfield for tables
Mostra commenti meno recenti
I'd like to know if my Matlab table has a particular column. If it was a structure I'd use isfield. Is there a built in function for this?
Risposta accettata
Più risposte (1)
Roger Parkyn
il 15 Set 2015
Modificato: Roger Parkyn
il 15 Set 2015
This issue was also raised by Pawel Kusmierek ( 123242-why-isfield-does-not-work-with-tables-but-fieldnames-does ). He gave a reasonably tidy work-around, in short:
name_exists = any(strcmp('Var_Name',fieldnames(Table_Name)))
1 Commento
Kelly Kearney
il 15 Set 2015
Note that fieldnames returns all object properties, which for a table includes both variable names and the Properties structure. To get just the column/variable names, query the VariableNames property:
t = table({'one';'two'}, [1;2])
t =
Var1 Var2
_____ ____
'one' 1
'two' 2
>> t.Properties.VariableNames
ans =
'Var1' 'Var2'
>> fieldnames(t)
ans =
'Var1'
'Var2'
'Properties'
Categorie
Scopri di più su Structures in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!