Sélectionner les lignes possédant la valeur maximum d'une variable

Soit un data frame possédant au moins deux variables, l'une identifiant au moins partiellement les enregistrements et l'autre étant une valeur numérique. Soit IDRecord et Var ces deux variables. Un même Idrecord peut être présent plusieurs fois, Var pouvant alors être différent ou bien une valeur déjà rencontrée. On veut filtrer les enregistrements du data set en ne conservant que les valeurs maximum pour chaque IDRecord à concurence maximum d'un enregistrement par IDRecord.

Une première approche consiste à utiliser l'opérateur max conjointement à tapply, by ou aggregate, en général à renommer la variable contenant les max à filtrer le data set initial en utilisant merge.