Java-Streams - Standardabweichung

8

Ich möchte im Vorhinein klarstellen Ich suche nach einer Möglichkeit zur Berechnung der Standardabweichung unter Verwendung von Streams (Ich habe derzeit eine Arbeitsmethode, die & amp; SD berechnet, aber keine Streams verwendet).

Der Datensatz, mit dem ich arbeite, stimmt genau überein, wie in Link . Wie in diesem Link gezeigt, bin ich in der Lage, meine Daten zu gruppieren & amp; bekomme den Durchschnitt aber nicht in der Lage herauszufinden, wie man die SD bekommt.

Code

%Vor%

Ich habe auch Link auf DoubleSummaryStatistics überprüft, aber es scheint nicht hilfreich zu sein SD.

    
iCoder 28.03.2016, 13:26
quelle

1 Antwort

9

Sie können einen benutzerdefinierten Kollektor für diese Aufgabe verwenden, der eine Summe von Quadrat berechnet. Der Buit-in DoubleSummaryStatistics collector behält das nicht im Auge. Dies wurde von der Expertengruppe in diesem Thread diskutiert aber schließlich nicht umgesetzt. Die Schwierigkeit bei der Berechnung der Summe der Quadrate ist der mögliche Überlauf bei der Quadrierung der Zwischenergebnisse.

%Vor%

Dann können Sie diese Klasse mit

verwenden %Vor%

Dadurch wird die Eingabeliste in einer Karte gesammelt, in der die Werte der Standardabweichung von high - low für denselben Schlüssel entsprechen.

    
Tunaki 28.03.2016, 14:14
quelle