我有一个矩阵,我想将第五列类型从字符更改为数字,但我不能.我试过这个:
test1[,5] <- as.numeric(test1[,5])
Run Code Online (Sandbox Code Playgroud)
但是,列类是字符而不是数字.我该怎么办?谢谢
就像@Marius所说,矩阵只能容纳一种数据类型.您可以将矩阵转换为data.frame,因为data.frames可以为每个列保存不同的数据类型.转换和转换的功能是as.data.frame和as.matrix.然后,您就可以将发布的列转换代码应用于data.frame.
但是,您在评论中提到,您的最终目标是根据强制列的值重新排序矩阵.在重新排序矩阵之前,您不需要就地强制列,您可以使用以下方式执行所有操作:
test1[order(as.numeric(test1[, 5])), ]
Run Code Online (Sandbox Code Playgroud)