Размер не совпадает при заполнении матрицы - PullRequest
0 голосов
/ 02 августа 2011

В настоящее время я работаю в R и пытаюсь заполнить матрицу циклами for.Тем не менее, я получаю сообщение об ошибке «количество заменяемых элементов не кратно длине замены».Я установил свою матрицу () так, чтобы я указал nrow (потому что уверен в размере) и оставил ncol пустым.

Как создать матрицу, которая динамически распределяет размеры?

Есть рекомендации?Спасибо.

1 Ответ

2 голосов
/ 02 августа 2011

На ум приходит пара вариантов:

  • Сделать обоснованное предположение о размере матрицы и распределить соответственно. Затем проверьте свой код, чтобы увидеть, не превысите ли вы выбранные пределы, и разверните объект. Если вы расширились на приемлемый размер чанка (т.е. не добавляйте только 1 столбец, добавьте 10 или 20 или n в зависимости от размера вашей проблемы, что бы это ни было разумным), тогда вы не будете брать копию / часто увеличивайте накладные расходы, что и делает болты, если они написаны плохо.

  • Сохраните данные / результат в виде списка, каждый компонент которого будет одной строкой вашей матрицы. Таким образом, вы заполняете объект по мере продвижения, а затем можете либо обработать результирующий список в матрицу с отступами, либо просто работать непосредственно со списком. Если каждая строка может иметь разную длину (количество столбцов), то не имеет смысла сохранять ее в виде матрицы, а список является лучшим вариантом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...