Accesing structure using a function

1 visualización (últimos 30 días)
Mario Prinetti
Mario Prinetti el 2 de Mayo de 2019
Editada: Stephen23 el 7 de Mayo de 2019
Dear all,
I have a function that needs to treat data coming from a structure, and I want to have several inputs indicating which branch of the structure is the one to be treated:
function total = totalCampus(campus,building,year,var)
total=getfield(campus,(year),(building),(var))
end
This is just the first line of the function, where I want to call the specific column of the table in the structure, using dynamic fieldnames, but I can't manage. Any clue?
best regards,
Mario

Respuesta aceptada

Adam
Adam el 2 de Mayo de 2019
total = campus.( building ).( year ).( var );
should work fine, assuming campus is your struct and that is a branch of the struct.
  3 comentarios
Adam
Adam el 7 de Mayo de 2019
Is it defined?
Stephen23
Stephen23 el 7 de Mayo de 2019
Editada: Stephen23 el 7 de Mayo de 2019
"once I type tot=totalCampus(1,a2017,total,PotenciaActivaTotal_kW); it tells me that the function or variable a2017 is undefined "
You are typing those inputs without single quotes, which tells MATLAB that they are variable/function/class/etc. names. You need to use single quotes to define character vectors.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Structures en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by