我对R还比较陌生,主要使用它来可视化统计数据,使用ggplot2
库。现在我遇到了一个数据准备的问题。
我需要编写一个函数,从指定列中删除一些数字(2、5或10)行,并将它们放入另一个数据框中,然后为每个因子组合(在我的情况下:每天和服务器)执行此操作。
到目前为止,我已经完成了以下步骤(使用esoph
示例数据集的MWE)。
我根据所需参数(例如ncontrols
)对框架进行了排序:
esoph<-esoph[with(esoph,order(-ncontrols)) ,]
我可以显示每个因素值(在此示例中为每个年龄段)的第一个/最后一个记录:
by(data=esoph,INDICES=esoph$agegp,FUN=head,3)
by(data=esoph,INDICES=esoph$agegp,FUN=tail,3)
基本上,我可以看到最高和最低值,但我不知道如何将它们提取到另一个数据框中并从主数据框中删除它们。
在上面的例子中,我可以看到每个因素(年龄段)的顶部/底部记录,但实际上我需要知道每个因素(例如
agegp
和alcgp
)的最高和最低记录。我甚至不确定这些步骤是否正确 - 或许使用
plyr
会更好?我会感激任何提示。