How to use cell as input arguments of a function?

10 visualizzazioni (ultimi 30 giorni)
I have a cell array C = {[1 2 3],[4 5 6],[7 8 9] }.
How do I use this cell array as input argument for a function?
function B = merge(C)
for i = 1:3
for j = 1:3
if i<j
B = [C{i};C{j}]
end
end
end
Thanks!
  2 Commenti
Stephen23
Stephen23 il 7 Ott 2019
Modificato: Stephen23 il 7 Ott 2019
"How do I use this cell array as input argument for a function?"
Just pass it as an argument:
C_in = {....};
B_out = merge(C_in)
Note that your code overwrites B each time that line is evaluated, thus making both loops superfluous and your code simply equivalent to B = [C{2};C{3}]
muhammad muda
muhammad muda il 7 Ott 2019
But I tried to run this program and it says "Not enough input arguments".
How can I solve this?

Accedi per commentare.

Risposta accettata

meghannmarie
meghannmarie il 7 Ott 2019
Modificato: meghannmarie il 7 Ott 2019
This works for me. Maybe matlab has another merge function? Type this:
which merge
Make sure the path its giving you points at YOUR merge.m file and not a path to a MATLAB toolbox. If it is pointing at a different one, change the name of your function and file to merge2 or something.

Più risposte (0)

Categorie

Scopri di più su Multidimensional Arrays in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by