Pass a Structure and Structure Elements to a Function

2 visualizaciones (últimos 30 días)
I need to pass on a Structure as well as the elements of that structure to a function, but I keep on getting an error. Anyone out there know how to fix this one. Thanks in advance.
function [output] = monthlyplot(data,year,month);
%data; pass on structure; ex. Electrical
%year; pass on year of interest; ex. Twelve
%month; pass on month of interest; ex. January
month2 = struct('January',1,'February',2,'March',3,'April',4,'May',5,'June',6,'July',7,'August',8,'September',9,'October',10,'November',11,'December',12);
year2 = struct('Twelve',1,'Thirteen',2);
fieldmonths = fieldnames(month2);
fieldyear = fieldnames(year2);
temp1 = getfield(data.year.month);
  3 comentarios
Franco
Franco el 2 de Mzo. de 2013
Say that the structure is of the form Electrical.Year.Month. I would like to pass the structure Electrical to the function. Specify the Year and the Day. So for example, if I want to do an analysis on the data set in Electrical.Twelve.January, I would like to pass that on to the function in the form monthlyplot(Electrical, 'Twelve','January'). When I do that though,t he error I get is
monthlyplot(Electrical,'Twelve','January')
Reference to non-existent field 'year'.
Azzi Abdelmalek
Azzi Abdelmalek el 3 de Mzo. de 2013
Editada: Azzi Abdelmalek el 3 de Mzo. de 2013
You can use
Electrical.('twelve').('January')
%or
year='twelve'
month='January'
Electrical.(year).(month)

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 3 de Mzo. de 2013
function [output] = monthlyplot(data,year,month);
%data; pass on structure; ex. Electrical
%year; pass on year of interest; ex. Twelve
%month; pass on month of interest; ex. January
temp1 = data.(year).(month);

Más respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 2 de Mzo. de 2013
Editada: Azzi Abdelmalek el 2 de Mzo. de 2013
You do not need to pass the fields of your struct variable in function arguments.
function output= monthlyplot(data)
% Maybe you should give more informations

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by