我有n个具有相同列数但数据类型不同的矩阵。我想将所有矩阵强制转换为特定的矩阵数据类型,以便可以使用rbind
所有矩阵。
输入
mat1 <- data.frame(var1=rep(2010,10), var2=letters[1:10], var3 = as.factor(rep(NA,10)))
mat2 <- data.frame(var1=rep(2010,10), var2=letters[1:10], var3 = as.numeric(rep(1,10)))
mat3 <- ...
我想这样强迫data type of mat1 <- data type of mat2
,rbind(mat1,mat2)
而不会发出警告/错误。由于我的矩阵很大,因此无法分别更改每种变量数据类型。
根据你的意思是不能够什么“分别更改每个变量的数据类型,”你可以用mapply
与as
:
mat1[] <- mapply(FUN = as, mat2, sapply(mat2, class), SIMPLIFY = FALSE)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句