cell array with numeric values only

6 visualizaciones (últimos 30 días)
Pavan Singh
Pavan Singh el 2 de Nov. de 2020
Comentada: Pavan Singh el 2 de Nov. de 2020
Conver this array to an array with numbers only so it can be used for a graph

Respuesta aceptada

VBBV
VBBV el 2 de Nov. de 2020
Editada: VBBV el 2 de Nov. de 2020
%if true
% code
% end
C = {'long: 151.125#';'long: 151.126#'}
for i=1:length(C)
nn{i}=(C{i}(7:13));
end
A = cell2mat(nn')
B = str2num(A)% array with numbers only

Más respuestas (2)

Stephen23
Stephen23 el 2 de Nov. de 2020
Do NOT use loops or cellfun for this, unless you really want to write complex and slow MATLAB code.
The most efficient solution is to use sscanf like this:
C = {'long: 151.125#';'long: 151.126#'};
V = sscanf([C{:}],'long:%f#')
V = 2×1
151.1250 151.1260

Akira Agata
Akira Agata el 2 de Nov. de 2020
Another possible solution:
C = {'long: 151.125#';'long: 151.126#'};
V = regexp(C,'[?\d.]+','match','once');
V = str2double(V);
>> V
V =
151.1250
151.1260

Categorías

Más información sobre Get Started with MATLAB en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by