Используйте аргумент drop=FALSE для [.
drop=FALSE
[
m <- matrix(1:10,5,2) rownames(m) <- 1:5 colnames(m) <- 1:2 m[,1] # vector m[,1,drop=FALSE] # matrix