Erste Schritte Mittelwert zeitlich abhängiger Werte

PaulGustav

Mitglied
Hallo zusammen,

ich stehe mal wieder vor einem kleinen Rätsel und würde dies gerne möglichst kurz und knapp lösen. Es geht darum, dass ich eine große Datenmenge habe, welche über einen großen Zeitraum erhoben wurde. Grundlegend liegen mir die Daten wie folgt vor:
Code:
Rohdaten (je Stunde eine gezippte Datei => 24 Dateien je Tag)
2015-01-08T00:59:54Z,100,11
                    ,200,37
                    ,100,52
2015-01-08T01:00:24Z,300,11
                    ,100,37
2015-01-08T01:00:54Z,300,11
2015-01-08T01:01:24Z,300,11
2015-01-08T01:01:54Z,300,11
2015-01-08T01:02:24Z,300,11
                    ,100,13
2015-01-08T01:02:54Z,300,11
2015-01-08T23:59:59Z,100,54

2015-01-09T00:59:54Z,200,40
                    ,400,37
                    ,400,52
2015-01-09T01:00:24Z,200,40
                    ,400,37
2015-01-09T01:00:54Z,200,40
2015-01-09T01:01:24Z,200,40
2015-01-09T01:01:54Z,200,40
2015-01-09T01:02:24Z,200,40
                    ,400,13
2015-01-09T01:02:54Z,200,40
2015-01-09T23:59:59Z,300,60

Für eine Zeitreihenanalyse, welche sich über ein ganzes Jahr erstrecken soll, hätte ich nun gerne die Mittelwerte für jeden Tag. Also in diesm Falle ein solches Ergebnis:
Code:
2015-01-08,208.33,22.5
2015-01-09,275,39.92

Mein Problem ist, dass für jeden Tag eine unterschiedliche Anzahl an Zeitstempeln vorliegt. Ich arbeite bisher schon mit Instant und habe auch schon die aggregierten Werte entsprechend parsen können. Ist es vielleicht mittels der Java.Instant- / Java.Time-API möglich, eine Schleife zu schreiben, die sich die jeweiligen Werte eines Tages merkt und mir aus allen ermittelten Werte den Mittelwert ausspuckt?

Beste Grüße und schon mal vorab vielen Dank,
Paul
 

PaulGustav

Mitglied
Bisher parse ich übrigens mittels folgenden (minimal gehaltenen) Code:
Java:
public class AggregateTimeSeriesData {
    while ((line = br.readLine()) != null) {
                        String[] content = line.split(",");
                        if (StringUtils.isEmpty(content[COLUMN_TIMESTAMP]) == false && line.contains(",") == true) {
                            Instant time = Instant.parse(content[COLUMN_TIMESTAMP].substring(0, 20));
                            if (time.isAfter(startTime) && time.isBefore(stopTime)) {
                                dp = new TrafficJamDataPoint(time);
                                dp.addDataLine(content);
                                tsData.add(dp);
                            }
                        } else if (content[COLUMN_TIMESTAMP].isEmpty() && dp != null) {
                            dp.addDataLine(content);
                        }
                    }
}

               
public class TrafficJamDataPoint {
    public void addDataLine(String[] content) {
        count++;
        if (isNullOrBlank((content[COLUMN_DELAY])))
            totalDelay += 0;
        else
            totalDelay += Float.parseFloat(content[COLUMN_DELAY]);
        if (isNullOrBlank(content[COLUMN_LENGTH]))
            totalLength += 0;
        else
            totalLength += Float.parseFloat(content[COLUMN_LENGTH]);
    }               
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Erste Schritte Array Mittelwert Methode Programmieren Java Basics - Anfänger-Themen 5
P Mittelwert Arrayelemente berechnen Fehler Java Basics - Anfänger-Themen 5
J Variablen arithmetischen Mittelwert berechnen Java Basics - Anfänger-Themen 5
M Erste Schritte Mittelwert berechnen -> Methode in der Methode? Java Basics - Anfänger-Themen 14
R Werte aus Array addieren und Mittelwert bilden Java Basics - Anfänger-Themen 2
G Array Mittelwert berechnen, wie? Java Basics - Anfänger-Themen 8
M Methoden Mittelwert rationaler Zahlen mittels Methode Java Basics - Anfänger-Themen 4
V Mittelwert berechnen Java Basics - Anfänger-Themen 31
F Gewichteter Mittelwert über eine Zeitperiode Java Basics - Anfänger-Themen 3
N Erste Schritte Mittelwert in Array Java Basics - Anfänger-Themen 4
P Mittelwert rekursiv Java Basics - Anfänger-Themen 13
C Mittelwert berechnen Java Basics - Anfänger-Themen 5
L Brauch Mittelwert jeweils 3 Zahlen die durch 20 Wiederholungen geteilt werden Java Basics - Anfänger-Themen 17
G Mittelwert Java Basics - Anfänger-Themen 31
K Frage wegen Mittelwert Java Basics - Anfänger-Themen 32
M Maximum, Minimum und Mittelwert berechnen Java Basics - Anfänger-Themen 25
B Notenauswertung: Einlesen der Anzahl, Bildung Mittelwert Java Basics - Anfänger-Themen 8
P Mittelwert, Datei einlesen. ich verzweifle Java Basics - Anfänger-Themen 3
N Mittelwert (fast fertig, nur noch 2 fehler ;-) ) Java Basics - Anfänger-Themen 14
M Programm soll n Zahlen von der Tastatur lesen(Mittelwert) Java Basics - Anfänger-Themen 8
T Ausführung zeitlich begrenzen? Java Basics - Anfänger-Themen 2
H mehrere Strings zeitlich versetzt in eine Datei schreiben Java Basics - Anfänger-Themen 3
B Methoden zeitlich gesteuert ausführen? Java Basics - Anfänger-Themen 3
R Programm zeitlich beschränken lassen. Java Basics - Anfänger-Themen 2
G Zeitlich begrenztes Einlesen Java Basics - Anfänger-Themen 2
N sortieren zweier abhängiger array listen Java Basics - Anfänger-Themen 12

Ähnliche Java Themen

Neue Themen


Oben