Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using pandas to get cumulative sum of data by days

Python

I've got weather data for 122 days from Wunderground that doesn't have equal time sampling intervals. Here's a sample of my data:

Bangor Weather Data from Wunderground
Datetime,Temp(F),Precip(in.),Snow (in.),PET(in./day),Baro(mBar)
    2015-12-02 01:30:00,1.1,0.3,0.0,0.45524647117649564,1017.5 
    2015-12-02 01:53:00,1.1,0.3,0.0,0.45524647117649564,1017.6 
    2015-12-02 02:20:00,1.1,0.3,0.0,0.45524647117649564,1017.2 
    2015-12-02 02:53:00,1.7,0.5,0.0,0.500024812603692,1016.7 
    2015-12-02 02:55:00,1.7,0.3,0.0,0.500024812603692,1016.5 
    2015-12-02 03:09:00,1.1,0.3,0.0,0.45524647117649564,1016.1 
    2015-12-02 03:33:00,1.1,0.5,0.0,0.45524647117649564,1016.1 
    2015-12-02 03:53:00,1.7,0.8,0.0,0.500024812603692,1016.1 
    2015-12-02 04:34:00,1.7,0.5,0.0,0.500024812603692,1015.1 
    2015-12-02 04:46:00,1.7,0.5,0.0,0.500024812603692,1015.1 
    2015-12-02 04:53:00,1.7,0.8,0.0,0.500024812603692,1015.1 
    2015-12-02 05:13:00,1.7,0.0,0.0,0.500024812603692,1014.4 

I want to get the daily sum of snow (reset to zero for a new day) for my entire data set. I want my output would look like:

    2015-12-01,0.0
    2015-12-02,0.0
    2015-12-03,1.0
    2015-12-04,3.0
    2015-12-05,0.0
    2015-12-06,1.0

How can I use pandas to do this?

like image 779
Strak Avatar asked Oct 30 '22 06:10

Strak


1 Answers

Is that what you want?

df.groupby(df.Datetime.dt.date)['Snow (in.)'].sum()

This will give you amount of snow (sum) per day

like image 167
MaxU - stop WAR against UA Avatar answered Nov 08 '22 12:11

MaxU - stop WAR against UA