如何获得R中的索引号

时间:2013-12-28 05:05:45

标签: r

首先,有一个数据框,比如df = data.frame(a = c("one","two"),b = c(1,2),c = c(3,4)),我想要删除一些没用的列,我知道我可以使用df[-1],如果我不使用列{{但是,如果我重新排列列顺序,我必须知道a的索引号为a1或其他数字,我该怎么办?

提前感谢任何帮助〜

1 个答案:

答案 0 :(得分:2)

使用列本身的name而不是其索引号。有几种方法可以做到这一点,但我更喜欢setdiff之类的-(which(...))

df[, setdiff(names(df), "a")]
#   b c
# 1 1 3
# 2 2 4

对于“互动使用”,还有subset

subset(df, select=-a)
#   b c
# 1 1 3
# 2 2 4

如上所述,对您的问题“如何获取索引编号...”的最直接答案,which为您做到了这一点:

which(names(df) == "a")
# [1] 1