6
グループごとに上位の値を取得する
これはサンプルデータフレームです。 d <- data.frame( x = runif(90), grp = gl(3, 30) ) の各値のd上位5つの値を持つ行を含むサブセットが必要です。xgrp base-Rを使用すると、私のアプローチは次のようになります。 ordered <- d[order(d$x, decreasing = TRUE), ] splits <- split(ordered, ordered$grp) heads <- lapply(splits, head) do.call(rbind, heads) ## x grp ## 1.19 0.8879631 1 ## 1.4 0.8844818 1 ## 1.12 0.8596197 1 ## 1.26 0.8481809 1 …
92
r
data.table
dplyr