开发者

Delete a cell array column

Placed simple values into the cell array for testing.

model{1,1}=1;model{1,2}=2;model{1,3}=3;
model{2,1}=开发者_开发问答4;model{2,2}=5;model{2,3}=6;
i=2;//I want to remove the second column

temp={  model{:,1:i-1} model{:,i+1:size(model,2)}  }

I wanted a result like this:

temp =

[1]    [3]    
[4]    [6]

But I'm getting this:

temp =

[1]    [4]    [3]    [6]

How can I get this right?

p.s: for anyone working on Cell Arrays, there's a nice technique for appending here.


You can reshape or delete the cells themselves using ()-addressing.

model(:,2) = [];


You have to transpose the two pieces, and change some parentheses:

temp= [{ model{:,1:i-1}}' {model{:,i+1:size(model,2)}}']


there is a function called fun_removecellrowcols, which removes specific row/columns indicated by the user. This affects the dimensions of the cell, due to the row/cols removal.

http://www.mathworks.com/matlabcentral/fileexchange/46196-fun-removecellrowcols

Regards, José

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜