📅  最后修改于: 2023-12-03 15:37:38.907000             🧑  作者: Mango
在R的数据处理中经常需要对DataFrame按照某些列进行分组操作,并对每个组分别进行处理。但有时我们只需要每个组的第一行,怎样才能在DataFrame中选择每个组的第一行呢?本文将介绍几种方法。
library(dplyr)
group_by(df, group_col) %>%
slice(1)
该方法首先使用group_by()函数将DataFrame按照group_col列分组,然后使用slice()函数选择每个组的第一行。
library(data.table)
setDT(df)[, .SD[1,], by = group_col]
该方法首先使用setDT()函数将DataFrame转化为data.table类型,并使用[, .SD[1,], by = group_col]选择每个组的第一行。
sapply(split(df, df$group_col), function(x) x[1,])
该方法首先使用split()函数将DataFrame按照group_col列分组,并使用sapply()函数选择每个组的第一行。
以上就是在R中选择DataFrame中每个组的第一行的几种方法,各有优缺点。但不论哪种方法,都可以在DataFrame中快速选择每个组的第一行。