[PYTHON] So berechnen Sie die Summe oder den Durchschnitt von Zeitreihen-CSV-Daten in einem Augenblick
TL;DR
- Verwenden Sie Pandas, um Zeitreihen-CSV zu verarbeiten
Was du machen willst
- https://qiita.com/kazutxt/items/a23412625fa3e1f35443
- Ich möchte die täglichen und monatlichen Durchschnittswerte aus den hier gesammelten Daten (CSV-Zeitreihendaten) ermitteln.
input.csv
#Datum(Bis zu Minuten),USD Kurs,JPY-Rate,EUR-Kurs
#Alle 10 Minuten gibt es 144 Datenzeilen pro Tag
# 2020/2/24 18:00 ~ 2020/6/11 23:10
yyyy/mm/dd HH:MM,NN.N(data),NN.N,NN.N
yyyy/mm/dd HH:MM,NN.N(data),NN.N,NN.N
yyyy/mm/dd HH:MM,NN.N(data),NN.N,NN.N
Der Versuch, das Rad neu zu erfinden
Schreiben Sie zuerst den Code und fragen Sie (versuchen Sie zu fragen)
- Öffnen Sie die Datei
- Betrachten Sie die erste Spalte als Datum und Uhrzeit und konvertieren Sie sie in den Datumstyp
- Sammeln Sie Werte, bis die Grenze zwischen demselben Monat und Tag überschritten ist
- Teilen Sie die akkumulierten Daten durch die Anzahl der akkumulierten Daten, um den Durchschnitt zu berechnen
- Dateiausgabe
Elemente, die problematisch zu sein scheinen
- Der erste und der letzte Tag sind nicht 144
- 30 Tage und 31 Tage werden in einem Monat gemischt
- Erfordert eine Typkonvertierung von Zeichen zu Datum zu Nummer
Finde das erfundene Rad
- Ich habe ein Rad gefunden, als ich nach
python csv time series
gesucht habe
csvcalc.py
import pandas as pd
df = pd.read_csv("input.csv",index_col=0,parse_dates=True)
df.resample('D').mean().to_csv("output.csv")
- D ist täglich. M für monatlich
- Mittelwert ist die durchschnittliche Berechnung. Summe zur Berechnung der Gesamtsumme
- to_csv ist eine Dateiausgabe
out.csv
2020/2/25,13.99777778,4.343472222,13.19909722
2020/2/26,13.55291667,3.572986111,7.519791667
2020/2/27,12.31902778,4.954513889,9.513611111
・ ・ ・
Die Räder geben sogar die Grafik aus
- Es scheint, dass Sie es mit df.plot () tun können
- Es funktioniert nicht, wenn ich es auf einem Mac mache. Es tut uns leid
Fazit
- Räder nicht neu erfinden (außer zu Studienzwecken)
- Finde Räder