我觉得 R 中的矩阵运算非常令人困惑:我们混合了行向量和列向量。
这里我们定义x1
作为向量,(我假设 R 默认向量是列向量?但它没有显示它是这样排列的。)
然后我们定义x2
是一个转置x1
,这个显示对我来说也很奇怪。
最后,如果我们定义x3
作为矩阵,显示效果似乎更好。
现在,我的问题是,x1
and x2
是完全不同的东西(一个是另一个的转置),但我们在这里得到相同的结果。
有什么解释吗?也许我不应该将向量和矩阵运算混合在一起?
x1 = c(1:3)
x2 = t(x1)
x3 = matrix(c(1:3), ncol = 1)
x1
[1] 1 2 3
x2
[,1] [,2] [,3]
[1,] 1 2 3
x3
[,1]
[1,] 1
[2,] 2
[3,] 3
x3 %*% x1
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 2 4 6
[3,] 3 6 9
x3 %*% x2
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 2 4 6
[3,] 3 6 9