R是一个向量,一行矩阵或一列矩阵

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可能是唯一的(

在本例中,我希望结果是1x6矩阵,但结果是3x2矩阵

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