Я пытаюсь создать массив ячеек ячеек массивов в Matlab. Код, который я сейчас выполняю, работает так, как мне нужно. Проблема в том, что если я прокомментирую любую строку, которая не является первой, средней или последней, я получаю ошибку:Ошибка конкатенации матрицы ячеек в Matlab, когда некоторые строки комментируются
Ошибка использования ==> vertcat Параметры аргументов CAT несовместимы.
Я исследовал это на некоторое время, и я нашел еще один человек с точно такой же проблемой ...
... однако, нет никакого решения на этот пост.
Вот мой код (на 4s стоять возможные целые значения переменных держать):
cell = {{4} ...
{4} ...
{4} ...
{4} ...
{} ...
{4} ...
{4} ...
{4} ...
{4} ...
{4 4 4 4} ...
{4} ...
{4} ...
{4} ...
{4} ...
{4} ...
{4 4 4 4} ...
{5} ...
{} ...
{4} ...
{4} ...
{} ...
{} ...
{} ...
{} ...
{} ...
{} ...
{} ...
{} ...
{} ...
};
(я не могу заставить его выглядеть точно так же здесь ... после каждого эллипса код перемещается новая строка в моей версии)
Предположим, я прокомментировал строку с 5 в ней. Он всегда будет возвращать ошибку конкатенации. Любая идея, почему это происходит?
Спасибо заранее,
Николь
Есть ли способ заставить его быть 1 на n? Я не хочу переделывать индексирование, которое я делаю позже в коде, если только мне это не нужно (его много). –
Чтобы сделать это 1-by-n, вы можете просто перенести массив после создания: 'c = c ';'.Однако, если все, что вы делаете, индексируется как 'c {i}', а не 'c {1, i}', вы будете в порядке даже без транспонирования. – Jonas
Отлично, большое вам спасибо! –