重命名dataframe的列并使用该名称访问它们
我有一个向数据帧添加几列的循环 我知道如何用colname重命名列,但我不能使用这些新名称访问这些列 例如,我在框架中添加了一列数字为22的列重命名dataframe的列并使用该名称访问它们,r,dataframe,rename,R,Dataframe,Rename,我有一个向数据帧添加几列的循环 我知道如何用colname重命名列,但我不能使用这些新名称访问这些列 例如,我在框架中添加了一列数字为22的列 units = 10 my.frame[units+1] = 22 我可以使用以下命令重命名此列: colnames(my.frame)[units+1] = "twentytwo_column" 但是如果我想在代码后面的某个地方访问这个专栏,我必须这样做: my.frame[units+1] my.frame[twentytwo_column]
units = 10
my.frame[units+1] = 22
我可以使用以下命令重命名此列:
colnames(my.frame)[units+1] = "twentytwo_column"
但是如果我想在代码后面的某个地方访问这个专栏,我必须这样做:
my.frame[units+1]
my.frame[twentytwo_column]
如果我能像这样访问它,它将增加可理解性:
my.frame[units+1]
my.frame[twentytwo_column]
有什么方法可以做到这一点吗?您应该仔细阅读基本的对象提取(请参阅
?提取
)
您需要在括号中添加逗号(和引号)以从data.frame中提取列:my.frame[,units+1]
或my.frame[,“twentytwo_column”]
另外,通常在data.frame上使用names
而不是colnames
。当然:my.frame[“twentytwo_列”]
或my.frame$twentytwo_列