Borrar filtros
Borrar filtros

how to remove the first 5 characters from a cell array 343x1 cell

54 visualizaciones (últimos 30 días)
Hello all, I would like to remove the first few characters from every single cell (343), yet I am not much aware of how to do it. I tried to solve the problem via googling it yet could not find anything that would fit my case. The cell array is attached. Example: for "d035-117" for instance i would like to convert it into a form of "117". The first 5 characters need to be truncated. Thanks for your advices and help in advance!
  2 comentarios
Jack
Jack el 7 de Dic. de 2022
Do you have the answer already, because i don't get it too?
Image Analyst
Image Analyst el 7 de Dic. de 2022
@Jack you can see he accepted my answer below so I guess it worked for him.
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:

Iniciar sesión para comentar.

Respuesta aceptada

Image Analyst
Image Analyst el 27 de Oct. de 2015
How about (untested)
for k = 1 : length(ca)
cellContents = ca{k};
% Truncate and stick back into the cell
ca{k} = cellContents(6:end);
end
  5 comentarios
Supriya Gain
Supriya Gain el 18 de Mayo de 2022
I have a folder which contains 389 CSV files. And each CSV file has a dimension of 82x1. So basically it's a 1D matrix. Now the first element (i.e. A1) of every CSV file is 'VAR'. Now I want to remove this 'VAR' and shift my matrix to the upside. That means I want to remove A1 element and shift the whole matrix from A1. How to do that.
Image Analyst
Image Analyst el 18 de Mayo de 2022
@Supriya Gain try reading it into a table and deleting the first column
t = readtable(filename);
t = t(:, 2:end)
If that doesn't work, start a new question of your own (not here) and attach one of the CSV files there.

Iniciar sesión para comentar.

Más respuestas (1)

Jos (10584)
Jos (10584) el 27 de Oct. de 2015
Editada: Jos (10584) el 27 de Oct. de 2015
If A is your cell-array of strings, this oneliner will do the job:
B = cellfun(@(x) x(1:end-5), A, 'un', 0)
  2 comentarios
NU_YU
NU_YU el 27 de Oct. de 2015
Hi Jos,
I am not good at in matlab, so i sound dumb for sure. I did what you had suggested and it worked for the first 3 characters, not for the last 3. i substituted it with x(6:9), but it gace me an error. anyhow, thanks! I will try to solve it somehow. much appreciated

Iniciar sesión para comentar.

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