Как изменить тип столбца матрицы в R
У меня есть матрица, и я хочу изменить тип пятого столбца с символа на числовой, но я не могу. Я пробовал это:
test1[,5] <- as.numeric(test1[,5])
но опять же класс столбца является символом, а не числовым. Что мне делать? Спасибо
1 ответов
как сказал @Marius, матрица может содержать только один тип данных. Вы можете преобразовать свою матрицу в данные.кадр с данными.кадры могут содержать различные типы данных для каждого из своих столбцов. Функции для преобразования из и обратно являются as.data.frame
и as.matrix
. Затем вы сможете применить код преобразования столбца, который вы разнесли в данные.рамка.
однако вы упомянули в комментарии, что вашей конечной целью было изменить порядок матрицы на основе значений принудительного столбца. Вы не нужно принуждать столбец на месте перед переупорядочиванием матрицы, вы можете сделать все это на лету с помощью:
test1[order(as.numeric(test1[, 5])), ]