这一直困扰着我。考虑以下:
# Part A #
# Make a silly simple matrix with column names
x = matrix(1:4, ncol = 2)
colnames(x) = c("a","b")
# Part B #
# Pick out the first row of the matrix. This is not a matrix,
# and the column names are no longer accessible by colnames()
y = x[1,]
y
is.matrix(y)
colnames(y)
# Part C #
# But here is what I want:
y = matrix(x[1,], nrow = 1, dimnames = list(c(), colnames(x)))
有没有办法用更少的处理步骤或更少的代码来实现 C 部分?似乎应该有一个几乎和
x[1,]
一样短的命令做同样的事情。
最佳答案
刚设置drop=FALSE
如:
> y = x[1,, drop=FALSE]
> y
a b
[1,] 1 3
关于r - 选择单行矩阵作为矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19011843/