Я использовал mnlogit в R для создания модели многомерной логистической регрессии. Мой исходный набор переменных сгенерировал сингулярную матричную ошибку, т.е.
Error in solve.default(hessian, gradient, tol = 1e-24) :
system is computationally singular: reciprocal condition number = 7.09808e-25
Оказывается, что несколько «разреженных» столбцов (переменные, которые равны 0 для большинства выбранных индивидов) вызывают эту ошибку сингулярности. Мне нужен систематический способ удаления тех переменных, которые приводят к ошибке сингулярности, при сохранении тех, которые позволяют оценивать регрессионную модель, то есть что-то аналогичное использованию шага функции для выбора переменных, минимизирующих AIC посредством пошагового добавления, но на этот раз с удалением переменных порождающие особые матрицы.
Есть ли способ сделать это, поскольку проверка каждой переменной вручную (существует несколько сотен переменных-предикторов) была бы невероятно утомительной?