How to delete an element from a cell

1 visualización (últimos 30 días)
Maria
Maria el 26 de Abr. de 2014
Comentada: Maria el 24 de Jun. de 2014
I have a column in matlab with data written this way:
19970422
30980524
63098754
etc …
And I only want to have the first 4 numbers (preferably as a new variable), for instance like this:
1997
3098
6309
How can I do it? Thanks a lot for your help.

Respuesta aceptada

Apdullah YAYIK
Apdullah YAYIK el 27 de Abr. de 2014
Editada: Jan el 27 de Abr. de 2014
Thats easy
X=[19970422 30980524 63098754]
New_X=floor(X/1000)
  2 comentarios
Azzi Abdelmalek
Azzi Abdelmalek el 27 de Abr. de 2014
This gives the 5 first digits, use : floor(X/10000) . Also this works only for numbers with 8 digits.
Image Analyst
Image Analyst el 27 de Abr. de 2014
And she said she had cells, not regular numerical arrays, though perhaps she didn't really mean cells - who knows.

Iniciar sesión para comentar.

Más respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 26 de Abr. de 2014
Editada: Azzi Abdelmalek el 26 de Abr. de 2014
a=[19970422;30980524;63098754]
b=arrayfun(@num2str,a,'un',0)
out=cellfun(@(x) str2num(x(1:4)),b)
%or
a=[19970422;3098052422;630987541;0.23]
n=max(0,fix(log10(a)+1)-4)
out=fix(a./10.^n)
  2 comentarios
Maria
Maria el 23 de Jun. de 2014
@Azzi Abdelmalek by any chance do you know how to do exactly the same thing, but with a cell element? Thanks in advance for your help!
Maria
Maria el 24 de Jun. de 2014
About this question, problem solved!

Iniciar sesión para comentar.

Categorías

Más información sobre Matrix Indexing 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