Multiplying cell by scalar

4 visualizaciones (últimos 30 días)
Andrew
Andrew el 23 de Sept. de 2014
Editada: Adam el 23 de Sept. de 2014
I am using:
angle=regexp(folder(i).name,'\d+','match');
To get a numerical value out of the folder name.
It returns the value in the cell " angle ". I'd like to multiply this value by a scalar 3.14/180 and then use it in a function call: function(angle*3.14/180,...)
I've attempted some work with cellfun ( following this thread: http://www.mathworks.com/matlabcentral/answers/115522-multiply-a-cell-array-with-a-scalar), no success so far.
Is there a better way to approach this?
Thank you

Respuesta aceptada

Adam
Adam el 23 de Sept. de 2014
Editada: Adam el 23 de Sept. de 2014
angle = str2double( angle{1} ) * 3.14/180;
will put your value in a regular double assuming that you only have 1 cell or that the angle you want is in the first cell and that the result of regexp is actually a string containing the number as it would appear to be. If not, just get rid of the str2num.
  2 comentarios
Andrew
Andrew el 23 de Sept. de 2014
Thank you very much :D
Adam
Adam el 23 de Sept. de 2014
Editada: Adam el 23 de Sept. de 2014
Actually, I just remembered, str2double is the recommended function to use now, but str2num does still work, it's just less efficient I think. I edited the answer to reflect that.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Data Type Conversion en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by