CommencerCommencez gratuitement

Calculer la moyenne, le minimum et le maximum

Vous souhaitez analyser les données de vente de votre coffee shop. Les données contiennent la date de chaque transaction, le nom du café, le mode de paiement, la quantité vendue et le montant de la transaction, comme dans l’exemple ci-dessous. Calculez la moyenne, le minimum et le maximum des montants de transaction, formatés avec deux décimales.

date coffee_name payment_method quantity amount
3/1/24 Latte cash 1 $6.26
3/5/24 Hot Chocolate card 3 $32.51
3/6/24 Americano card 2 $18.70

Les packages nécessaires, tels que LocalDate, Arrays et List, ont été importés pour vous.

Cet exercice fait partie du cours

<cours>Nettoyer des données en Java</cours>
Voir le cours

Instructions de l’exercice

  • Calculez le montant moyen des transactions à l’aide de stats.
  • Calculez les montants minimum et maximum à l’aide de stats.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

import org.apache.commons.math3.stat.descriptive.DescriptiveStatistics;

public class CoffeeSalesExample {
    private record CoffeeSales(LocalDate date, String coffeeName,
            String paymentMethod, int quantity, double amount) {
    }

    public static void main(String[] args) {
        List sales = Arrays.asList(
                new CoffeeSales(LocalDate.of(2024, 3, 1), "Latte", "cash", 1, 6.26),
                new CoffeeSales(LocalDate.of(2024, 3, 5), "Hot Chocolate", "card", 3, 32.51),
                new CoffeeSales(LocalDate.of(2024, 3, 6), "Americano", "card", 2, 18.70));

        DescriptiveStatistics stats = new DescriptiveStatistics();
        sales.forEach(sale -> stats.addValue(sale.amount()));

        System.out.printf("\nSales analyzed: %d%n", sales.size());
        
        // Compute the mean transaction amount
        System.out.printf("Average amount: $%.2f%n", ____.____());
        
        // Compute the min and max transaction amounts
        System.out.printf("Amount range: $%.2f - $%.2f%n",
                ____.____(), ____.____());
    }
}
Modifier et exécuter le code