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

1 view (last 30 days)
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}

Answers (2)

Star Strider
Star Strider on 30 Jun 2015
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 Comments
Sam136
Sam136 on 30 Jun 2015
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.
Star Strider
Star Strider on 30 Jun 2015
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.

Sign in to comment.


Walter Roberson
Walter Roberson on 30 Jun 2015
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}

Categories

Find more on Data Type Identification in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!