Double vs. Cell "Undefined function 'plus' for input arguments of type 'cell' "

In my code, I have two variables (inp.W{9} & inp.W{10}) which seems to be double (when I remove semicolon, this is shown in command Window: ans = [1x10 double]). However when I try to add these two variables, I get this error:
Undefined function 'plus' for input arguments of type 'cell'.
Error in truck (line 21) inp.W{9}+inp.W{10}

Respuestas (2)

Without having them to experiment with and provide more specific code, I would use cell2mat to convert them first:
W9 = cell2mat(inp.W{9});
W10 = cell2mat(inp.W{10});
Result = W9 + W10;

4 comentarios

I have already tried this, but I get this error:
Attempt to reference field of non-structure array
Without actually having your data, it’s difficult to provide an appropriate response. There are simply too many possibilities. It’s always possible any of us could guess the correct one, but that is a less than productive effort.
I'd like to give more information to get better help, but I really don't know how to copy a long code with more than 2000 lines here.
It’s not code but your data that we need to determine your problem.
First, save your ‘inp’ structure as a .mat file, then attach it using the ‘paperclip’ icon.

Iniciar sesión para comentar.

When you see
[1x10 double]
instead of numbers, then you are looking at a cell rather than a numeric array. Use
inp.W{9}{1}+inp.W{10}{1}

1 comentario

I get same error as previous comment "Attempt to reference field of non-structure array"

Iniciar sesión para comentar.

Categorías

Más información sobre Data Type Identification en Centro de ayuda y File Exchange.

Productos

Etiquetas

Preguntada:

el 30 de Jun. de 2015

Comentada:

el 30 de Jun. de 2015

Community Treasure Hunt

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

Start Hunting!

Translated by