Удалить столбец массива ячеек - PullRequest
3 голосов
/ 02 июня 2011

Помещает простые значения в массив ячеек для тестирования.

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)}  }

Я хотел получить такой результат:

temp =

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

Но я получаю это:

temp =

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

Как я могу получить это право?

p.s: для тех, кто работает над массивами ячеек, есть хорошая техника для добавления сюда .

Ответы [ 3 ]

10 голосов
/ 02 июня 2011

Вы можете изменить форму или удалить сами ячейки, используя () -адресацию.

model(:,2) = [];
1 голос
/ 25 апреля 2014

есть функция fun_removecellrowcols, которая удаляет определенные строки / столбцы, указанные пользователем.Это влияет на размеры ячейки из-за удаления строки / столбцов.

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

С уважением, Хосе

1 голос
/ 02 июня 2011

Вы должны транспонировать две части и изменить некоторые скобки:

temp= [{ model{:,1:i-1}}' {model{:,i+1:size(model,2)}}']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...