Clearing part of an array
2 views (last 30 days)
Show older comments
I'm having a tough time figuring out the syntax to access specific columns in an array (and maybe even using the wrong terms to describe this...).
Say data=1x16 cell. If I want to clear the data but keep the columns intact, I have been doing data{1,8}={} and that clears column 1-8. However, I can not do data{9,16}={} to clear 9-16.
How would I do this? I'm sure it's something simple I am overlooking...
0 Comments
Accepted Answer
Kye Taylor
on 29 Jan 2013
Since data is a row of cells, the syntax
data{1,8} = {}
actually sets the 8th entry of data equal to the empty cell. To set each of the first eight entries of data equal to the empty cell, you can use
data(1:8) = {[]}
Similarly, clear the data in entries 9 through 16 using the syntax
data(9:16) = {[]}
0 Comments
More Answers (1)
Image Analyst
on 29 Jan 2013
Edited: Image Analyst
on 29 Jan 2013
You must be doing 1:8, not 1 comma 8. {9,16} would refer to a single cell of a 2D cell array (the cell in the 9th row and 16th column of the 2D cell array), which you don't have - you have only a 1D cell array. To clear cells 9 through 16 use colon like 9:16.
0 Comments
See Also
Categories
Find more on Structures 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!