Ich benutze Pandas, um Daten zu strukturieren und zu verarbeiten. Das ist mein Datenrahmen:Gruppe DataFrame nach Zeitraum mit Aggregation
ich viel Datetimes von Minute gruppierte, und ich habe eine Aggregation, um die Summe von ‚Bitrate‘ Noten von Minute zu haben. Dies war mein Code, um diesen Datenrahmen zu haben:
def aggregate_data(data):
def delete_seconds(time):
return (datetime.datetime.strptime(time, '%Y-%m-%d %H:%M:%S')).replace(second=0)
data['new_time'] = data['beginning_time'].apply(delete_seconds)
df = (data[['new_time', 'bitrate']].groupby(['new_time'])).aggregate(np.sum)
return df
Jetzt mag ich mit 5 Minuten als Eimer eine ähnliche Sache zu tun. Ich wand meine Datetimes Gruppe von 5 Minuten zu tun und eine mittlere .. Etwas wie folgt aus: (Diese dosent Arbeit natürlich!)
df.groupby([df.index.map(lambda t: t.5minute)]).aggregate(np.mean)
Ideen? Danke !
wenn Ihr Index ist bereits ein datetimeIndex dann können Sie nur 'resample' benutzen.' Df.resample ('5min') bedeuten() 'sollte – EdChum