Önceden açıklığa kavuşturmak istiyorum Streams kullanarak standart sapmayı hesaplamanın bir yolunu arıyorum (Şu anda & değerini döndüren ancak Streams kullanmadan hesaplayan bir çalışma yöntemim var).Java Akımları - Standart Sapma
Veri kümesi Link'da görüldüğü gibi eşleştirmelerle çalışıyorum. Bu bağlantıda gösterildiği gibi, verilerimi gruplandırdım & ortalamayı al, ancak SD'yi nasıl alacağımı anlayamıyorum.
Kod
outPut.stream()
.collect(Collectors.groupingBy(e -> e.getCar(),
Collectors.averagingDouble(e -> (e.getHigh() - e.getLow()))))
.forEach((car,avgHLDifference) -> System.out.println(car+ "\t" + avgHLDifference));
Ben de DoubleSummaryStatistics üzerinde Link kontrol ama SD için yardımcı görünmüyor.
çok teşekkür ederim. SD'yi alabiliyorum. Şimdi, iki akış yerine aynı akış() çağrısında hem ortalamaDouble hem de SD (like - car, averageHL, SD) toplayıp toplayamadığımı kontrol ediyorum. – iCoder
@iCoder Bu cevapta 'DoubleStatistics' SD ve ortalama evet toplar. Tüm bilgi ile bir 'Harita' olabilir. –
Tunaki
Taşma ile ilgili ilginç gerçek şu ki: “LongSummaryStatistics” aslında toplamı aşar, yani LongStream.of (Long.MAX_VALUE, Long.MAX_VALUE) .summaryStatistics(). GetAverage() '-1.0' dir. Bu taşma vurmak için şans, benim düşünceme göre kareler toplamı taşma şansı daha yüksektir ... –