bloques de 15 dias en sql en R

publicado por: Anonymous

Tengo la siguiente tabla:

 
        

              id
              dinero
              fecha
         

              1
              15
              2009-02-07
         

              1
              30
              2009-02-09
         

              1
              45
              2009-03-04
         

              1
              50
              2009-03-12
         

       
   

Me gustaría obtener el máximo de dinero gastado en cada quincena. Por ejemplo para la primera quincena de febrero tendría que salir 30 y para la de Marzo 50. ¿Cómo podría hacer esto en una consulta sql en R con la librería sqldf?

No utilizo ninguna base de datos, los tengo en archivos .csv y los importo en un dataframe. El problema que tendría es que el periodo de tiempo en el que tengo que realizar esto abarca varios años por lo que no sabría muy bien como realizarlo.

solución

No he tocado SQLDF,asique pongo esto para que pueda servirte de guia y/o ayuda.Suponiendo que el backend de sqldf sea SQLite, la select que estas buscando podría ser igual o similar a la siguiente

Select MAX(dinero) Cantidad,
   ROUND(strftime('%W', fecha)/2) Quincena,
   strftime('%Y', fecha) Year
   from quincenas
   group by ROUND(strftime('%W', fecha)/2),strftime('%Y', fecha)

Sobre el funcionamiento, strftime lo utilizamos para sacar por separado la semana del año con %W y el año en concreto con %Y.

Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *