Referring to specific input in loop

1 visualizzazione (ultimi 30 giorni)
I am writing a function and the input arguments are Data1 Data2 Data3 Data4 .... DataN. I am running a loop from i=1:N and one of the commands in this loop is to get the size(Datai) but im not sure how to refer to the specifc Data matrix based on the value of i in the loop.
  2 Commenti
KSSV
KSSV il 8 Giu 2020
Modificato: KSSV il 8 Giu 2020
How/ Why there is Data1, Data2, ...DataN?
This is not allowed/ comfortable. Rather use Data{1}, Data{2},.....Data{N}. This is called cell.
Stephen23
Stephen23 il 8 Giu 2020
"...the input arguments are Data1 Data2 Data3 Data4 .... DataN."
Numbering variable names like that is a sign that you are doing something wrong.
Most likely your code would be simpler and more efficient if you just used one container array, e.g. a cell array.

Accedi per commentare.

Risposta accettata

Mohammad Sami
Mohammad Sami il 8 Giu 2020
If you want to have variable number of arguments, perhaps you want to use varargin instead in your function signature.
function out = f_take_n_args(varargin)
for i = 1:length(varargin)
Datai = varargin{i};
end
end

Più risposte (0)

Categorie

Scopri di più su Graphics Objects in Help Center e File Exchange

Prodotti


Release

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by