Clear Filters
Clear Filters

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

54 views (last 30 days)
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 Comments
Image Analyst
Image Analyst on 7 Dec 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:

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 27 Oct 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 Comments
Supriya Gain
Supriya Gain on 18 May 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 on 18 May 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.

Sign in to comment.

More Answers (1)

Jos (10584)
Jos (10584) on 27 Oct 2015
Edited: Jos (10584) on 27 Oct 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 Comments
NU_YU
NU_YU on 27 Oct 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

Sign in to comment.

Categories

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

Community Treasure Hunt

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

Start Hunting!