How to use cell as input arguments of a function?

11 visualizaciones (últimos 30 días)
muhammad muda
muhammad muda el 7 de Oct. de 2019
Editada: meghannmarie el 7 de Oct. de 2019
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 comentarios
Stephen23
Stephen23 el 7 de Oct. de 2019
Editada: Stephen23 el 7 de Oct. de 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 el 7 de Oct. de 2019
But I tried to run this program and it says "Not enough input arguments".
How can I solve this?

Iniciar sesión para comentar.

Respuesta aceptada

meghannmarie
meghannmarie el 7 de Oct. de 2019
Editada: meghannmarie el 7 de Oct. de 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.

Más respuestas (0)

Categorías

Más información sobre Matrices and Arrays 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