就像@Marius 所说,矩阵只能保存一种数据类型。您可以将矩阵转换为 data.frame,因为 data.frames 可以为每个列保存不同的数据类型。相互转换的函数是as.data.frame
和as.matrix
。然后,您就可以将发布的列转换代码应用到 data.frame。
但是,您在评论中提到,您的最终目标是根据强制列的值重新排序矩阵。您不需要在重新排序矩阵之前就地强制列,您可以通过以下方式即时完成所有操作:
test1[order(as.numeric(test1[, 5])), ]