如何获取data.frame中的数据块索引?

时间:2013-07-24 05:04:08

标签: r dataframe

我有一个像这样的data.frame:

    a b
1   1 2
2   1 3
3   2 3
4   2 5

它按a排序,我需要不同a的索引。现在我正在使用for循环,但它并不优雅。

1 个答案:

答案 0 :(得分:2)

尝试以下方法:

# this will give you the row indices
lapply(unique(dat$a), function(a) which(dat$a==a))

如果您希望命名结果,请使用:

U <- unique(dat$a)
names(U) <- U
lapply(U, function(a) which(dat$a==a))

# Produces: 
#  $`1`
#  [1] 1 2
#
#  $`2`
#  [1] 3 4