model.matrix
- это процесс, который lm
и другие используют в фоновом режиме для преобразования для вас.
dat <- data.frame(f1=sample(LETTERS[1:3],20,T),f2=sample(LETTERS[4:5],20,T),id=1:20)
dat
model.matrix(~dat$f1 + dat$f2)
Он создает переменную INTERCEPT как столбец из 1, но вы можете легко удалить что если вам нужно.
model.matrix(~dat$f1 + dat$f2)[,-1]
Изменить: теперь я вижу, что это по существу то же самое, что и один из других комментариев, но более краткий.
, пока сервер возвращает заголовок состояния 200, будет выполняться обратный вызов onAllComplete. Обратный вызов onError сработает только тогда, когда вы вернете заголовок ошибки: например, 500 или 404. Следовательно, ваш серверный код должен возвращать ответ с флагом, если возникла проблема, и вы должны использовать onAllComple для выполнения какого-либо IF для than.
Например, если страница возвращает JSON с ошибкой:
[{"success":"false"}]
функция onAllComplete будет выглядеть примерно так:
'onComplete': function(ev, queueID, fileObj, response) {
var result = $.parseJSON(response).success;
if (!result)
alert('invalid')
else
alert('everything is OK');
}