R 按列名引用变量

R 按列名引用变量,r,R,我有一个矩阵,比如说X,我需要在R中使用它的列。我使用colnames命令来命名每一列。但是,当我键入一个列的名称时,什么也没有出现。为了举例说明,我使用了如下代码: colnames(X) <- c("column1","column2") colnames(X)下面是这样一个矩阵: X <- matrix(1:6, ncol=2) colnames(X) <- c("column1","column2") X column1 column2 [1,]

我有一个矩阵,比如说
X
,我需要在R中使用它的列。我使用
colnames
命令来命名每一列。但是,当我键入一个列的名称时,什么也没有出现。为了举例说明,我使用了如下代码:

colnames(X) <- c("column1","column2")
colnames(X)下面是这样一个矩阵:

X <- matrix(1:6, ncol=2)

colnames(X) <- c("column1","column2")
X
     column1 column2
[1,]       1       4
[2,]       2       5
[3,]       3       6

attach(as.data.frame(X))
column1
[1] 1 2 3
X下面是这样一个矩阵:

X <- matrix(1:6, ncol=2)

colnames(X) <- c("column1","column2")
X
     column1 column2
[1,]       1       4
[2,]       2       5
[3,]       3       6

attach(as.data.frame(X))
column1
[1] 1 2 3

X这是
R
的一个相当基本的部分,当您有一个列名、行名、列表元素名等时,您必须告诉
R
对象先查看内部

在您的情况下,您必须执行以下操作:

X[,"column1"] 
获取
列1

更好的选择是
数据帧

X <- data.frame(Column1 = c(....), Column2 = c(....))
X$Column1 #Returns "Column1"

X这是
R
的一个相当基本的部分,当您有一个列名、行名、列表元素名等时,您必须告诉
R
对象先查看内部

在您的情况下,您必须执行以下操作:

X[,"column1"] 
获取
列1

更好的选择是
数据帧

X <- data.frame(Column1 = c(....), Column2 = c(....))
X$Column1 #Returns "Column1"

X谢谢你,马修。这是可行的,但恐怕不是我想要的。我只需要用他们的列名来称呼他们。我的意思是,当我键入column1(或我叫它什么)时,该列中的数字应该出现。@Günal Edited。也许您需要
attach
,但这不适用于
矩阵
。不幸的是,正如Matthew所说,attach不适用于矩阵。伙计们,还能做些什么?思想please@Günal使用
data.frame
环境
@Günal使您的矩阵成为data.frame!谢谢你,马修。这是可行的,但恐怕不是我想要的。我只需要用他们的列名来称呼他们。我的意思是,当我键入column1(或我叫它什么)时,该列中的数字应该出现。@Günal Edited。也许您需要
attach
,但这不适用于
矩阵
。不幸的是,正如Matthew所说,attach不适用于矩阵。伙计们,还能做些什么?思想please@Günal使用
data.frame
环境
@Günal使您的矩阵成为data.frame!这不是他问的对不起,我误解了你的意图。这不是他问的对不起,我误解了你的意图。如果是data.frame,
attach
是提问者可能想要的。如果是data.frame,
attach
是提问者可能想要的。