Skip to content

[R-es] Eliminación de filas en data frame según versión del fichero de origen

3 messages · Rubén Coca, Carlos Ortega, Freddy Omar López Quintero

#
Hola a todos,
Pongamos que tengo un data frame en el que consolido observaciones
procedentes de múltiples ficheros. Para simplificar:
df <- data.frame(id = c(rep("0001", 4), rep("0002", 2), rep("0003", 3)),
                 date = c(rep("2016-01-01", 4), rep("2016-01-10", 2),
rep("2016-02-01", 3)),
                 value = runif(n = 9, min = 10, max = 20),
                 version = c(rep(0, 2), rep(1, 2), rep(0, 2), rep(0, 3)))
El caso es que para un mismo id y date debo quedarme con la observación que
tenga la versión más alta (descartando el resto). Se os ocurre alguna
aproximación al problema?
Muchas gracias por vuestra ayuda
Rubén
#
Hola,

Esta puede ser una manera...
id       date    value version
1: 0001 2016-01-01 18.86864       1
2: 0002 2016-01-10 13.44676       0
3: 0003 2016-02-01 19.16599       0


Saludos,
Carlos Ortega
www.qualityexcellence.es




El 23 de enero de 2017, 18:27, Rubén Coca <ruben.coca en gmail.com> escribió:

  
    
#
?Hola.?

2017-01-23 14:27 GMT-03:00 Rubén Coca <ruben.coca en gmail.com>:
Si es válido apoyarse en SQL, yo usaría algo como:
rowid   id max(value)

1     4 0001   19.57054

2     5 0002   14.70713

3     7 0003   19.34788


donde se reporta el número de la fila por si se quiere hacer otro join.?

?Saludos.?