> a<-matrix(c(1:9),3,3)
> a
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
> a[3,]*a[,3] # I expect 1x1 matrix as result of this.
[1] 21 48 81
> class(a)
[1] "matrix"
> class(a[3,])
[1] "integer"
在R中,一维矩阵会被转换为向量。我能否避免这种情况?我想要保留一维矩阵的矩阵形式。实际上,我需要将多种类型的矩阵传递给RcppArmadillo,甚至是零维矩阵。把矩阵变成向量是我的问题。
class(a[3,])
只会告诉你存储模式。你可能应该使用str()
,因为它会告诉你长度。 - IRTFM