考虑以下非常简单的例子:
> c(42,50)
[1] 42 50
> cbind(42,50)
[,1] [,2]
[1,] 42 50
显然,c
和cbind
给出了不同的输出。但这是为什么呢?对于这样的简单情况,为什么它们的连接方法不同?它们的输出之间的技术差异是什么?我本以为两者都是长度为二的数字向量,但cbind
的输出显然是另一回事。
只做?c
vs?cbind
:
c package:base R Documentation
Combine Values into a Vector or List
与
cbind package:base R Documentation
Combine R Objects by Rows or Columns
根据定义,它们是不一样的。
换句话说,我认为没有理由期望相同的输出。话虽如此,以下是您可以获得相同结构以防万一的方法:
> str(as.vector(cbind(42,50))) num [1:2] 42 50
与
> str(c(42,50)) num [1:2] 42 50