R是一个向量,一行矩阵或一列矩阵
在本例中,我希望结果是1x6矩阵,但结果是3x2矩阵R是一个向量,一行矩阵或一列矩阵,r,R,在本例中,我希望结果是1x6矩阵,但结果是3x2矩阵 c = cbind(a,b) 这是一个2x3矩阵。为什么a和b的结构不一致?这里带下划线的规则是什么?a和b是普通向量(不是数组),cbind将普通向量(和一维数组)视为列,而rbind将普通向量(和一维数组)视为行 如果给定二维输入,则它们确实按照问题中描述的方式工作 比如说, d = rbind(a,b) A13这是正确的。为什么你认为cbind应该给出1x6矩阵?@YOLO,其他一些语言将向量视为一行矩阵,在这方面,R可能是唯一的(
c = cbind(a,b)
这是一个2x3矩阵。为什么a和b的结构不一致?这里带下划线的规则是什么?
a
和b
是普通向量(不是数组),cbind
将普通向量(和一维数组)视为列,而rbind
将普通向量(和一维数组)视为行
如果给定二维输入,则它们确实按照问题中描述的方式工作
比如说,
d = rbind(a,b)
A13这是正确的。为什么你认为cbind
应该给出1x6矩阵?@YOLO,其他一些语言将向量视为一行矩阵,在这方面,R可能是唯一的(或者至少其行为不是通用的)。它有一个NULL
维度这一事实是这一点的直接后果,而不是反过来@VuDuong,rbind
将向量视为行,cbind
将它们视为列;在R.BTW中,这是一种方便的双重性,要获得长度为6的对象,请使用c(a,b)
d = rbind(a,b)
A13 <- matrix(1:3, 1) # 1x3 matrix
B13 <- matrix(4:6, 1) # 1x3 matrix
cbind(A13, B13)
## [,1] [,2] [,3] [,4] [,5] [,6]
## [1,] 1 2 3 4 5 6
rbind(A13, B13)
## [,1] [,2] [,3]
## [1,] 1 2 3
## [2,] 4 5 6
A31 <- matrix(1:3, 3) # 3x1 matrix
B31 <- matrix(4:6, 3) # 3x1 matrix
rbind(A31, B31)
## [,1]
## [1,] 1
## [2,] 2
## [3,] 3
## [4,] 4
## [5,] 5
## [6,] 6
cbind(A31, B31)
## [,1] [,2]
## [1,] 1 4
## [2,] 2 5
## [3,] 3 6