首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在R中通过索引获取一列的名称

在R中通过索引获取一列的名称
EN

Stack Overflow用户
提问于 2021-05-02 17:33:39
回答 3查看 53关注 0票数 1

想象一下下面的数据帧df:

代码语言:javascript
复制
name <- c("Jon", "Bill", "Maria")
age <- c(23, 41, 32)
df <- data.frame(name, age)

我希望能够使用其索引来获取列的名称。

如果我尝试获取多个列的名称,这是可以的:

代码语言:javascript
复制
colnames(df[,c(1,2)])
[1] "name" "age" 

然而,当我尝试只获取一个时,比如说第一个,它并不像我期望的那样工作:

代码语言:javascript
复制
colnames(df[,1])
NULL

这是什么?我如何获得我的第一列" name“的名称?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-05-02 17:35:13

简单地说

代码语言:javascript
复制
colnames(df)[1]
[1] "name"

代码语言:javascript
复制
colnames(df[1])
[1] "name"

代码语言:javascript
复制
names(df[1])
  [1] "name"
票数 3
EN

Stack Overflow用户

发布于 2021-05-02 22:33:40

您可以启用drop = FALSE

代码语言:javascript
复制
> colnames(df[,1,drop = FALSE])
[1] "name"

代码语言:javascript
复制
> colnames(df[1])              
[1] "name"
票数 0
EN

Stack Overflow用户

发布于 2021-05-02 18:11:22

您还可以指定一个新的列名,

代码语言:javascript
复制
colnames(df)[1] 
colnames(df)[1] <- c("Newname");df
colnames(df) <- c( "Name", "Age");df
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67354823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档