从数据框中按类别选择随机行?

Leg*_*end 2 r dataframe

我有一个数据框如下:

Category Name Value

我如何选择每个类别5个随机名称?使用sample返回随机行,使用所有行作为可能的候选.但是,我想指定每个类别的随机行数.有什么建议?

更新:我愿意使用ddply

42-*_*42- 7

没有测试用例的最佳猜测:

  do.call( rbind, lapply( split(dfrm, df$cat) ,
                         function(df) df[sample(nrow(df), 5) , ] )
          )
Run Code Online (Sandbox Code Playgroud)

用Jonathan的数据测试:

> do.call( rbind, lapply( split(df, df$Category) ,
+                          function(df) df[sample(nrow(df), 5) , ] )
+           )

      Category Name      Value   
1.8          1    8 -0.2496109   #  useful side-effect of labeling source group
1.15         1   15 -0.4037368
1.17         1   17 -0.4223724
1.12         1   12 -0.9359026
1.18         1   18  0.3741184
2.37         2   37  0.3033610
2.34         2   34 -0.4517738
2.36         2   36 -0.7695923
snipped remainder
Run Code Online (Sandbox Code Playgroud)