Я хотел бы сделать крупномасштабную регрессию (линейную/логистическую) в R со многими (например, 100k) функциями, где каждый пример относительно разрежен в пространстве возможностей --- например, ~ 1k ненулевые функции за пример.
Кажется, что SparseM пакет slm
должен сделать это, но у меня есть сложность преобразования из формата sparseMatrix
в slm
-дружественный формат.
У меня есть числовой вектор меток y
и sparseMatrix
функций X
\in {0,1}. Когда я пытаюсь
model <- slm(y ~ X)
Я получаю следующую ошибку:
Error in model.frame.default(formula = y ~ X) :
invalid type (S4) for variable 'X'
предположительно, потому что slm
хочет объект SparseM
вместо sparseMatrix
.
Есть ли простой способ либо a) заполнить объект SparseM
напрямую, либо b) преобразовать объект sparseMatrix
в объект SparseM
? Или, может быть, есть лучший/более простой способ сделать это?
(я полагаю, что я мог бы явно кодировать решения для линейной регрессии с помощью X
и y
, но было бы неплохо работать с slm
.)