Modèles de transformation de données

Importer des données en Java

Anthony Markham

VP Quant Developer

Fonction map

  • Transforme chaque élément d'une colonne
DoubleColumn celsius = DoubleColumn.create("Celsius", 0, 10, 20, 30);

DoubleColumn fahrenheit = celsius.map(c -> c * 9.0/5.0 + 32); table.addColumns(fahrenheit.setName("Fahrenheit"));
Celsius Fahrenheit
0.0 32.0
10.0 50.0
20.0 68.0
30.0 86.0
Importer des données en Java

Fonction reduce

  • Combine toutes les valeurs d'une colonne en un seul résultat
  • Applique un modèle d'accumulation (comme somme, max, ou logique personnalisée)
  • Utile pour les opérations statistiques et analytiques
// Trouver les ventes totales
double totalSales = table.doubleColumn("Sales").reduce(0, Double::sum);
250000
// Trouver le maximum
double largeSales = table.doubleColumn("Sales").reduce(0, (acc, x) -> acc + (x > 5000 ? 1 : 0));
68
Importer des données en Java

Itération des lignes avec forEach

  • Itère à travers chaque ligne d'un tableau
DoubleColumn difference = DoubleColumn.create("Difference");
table.forEach(row -> {
    double celsius = row.getDouble("Celsius");
    double fahrenheit = row.getDouble("Fahrenheit");
    difference.append(fahrenheit - celsius);
});

table.addColumns(difference);
Celsius Fahrenheit Difference
0.0 32.0 32.0
10.0 50.0 40.0
20.0 68.0 48.0
Importer des données en Java

Pipelines de transformation

  • Enchaîne plusieurs opérations
  • Améliore la lisibilité et la maintenabilité du code ✅
  • Traitement efficace des données ✅
Table result = originalTable
    .where(numberColumn("Age").isGreaterThan(18)) // Filtrer sur Age > 18

.addColumns( numberColumn("Income").map(i -> i * 1.1).setName("AdjustedIncome") );
// Calculer le revenu moyen double avgIncome = result.doubleColumn("AdjustedIncome") .reduce(0.0, Double::sum) / result.rowCount();
Importer des données en Java

Récapitulatif

  • map() - applique une fonction pour transformer les valeurs de colonne
  • forEach() - itère à travers les lignes pour accéder à plusieurs colonnes
  • reduce() - agrège et résume les données en valeurs uniques

Une image montrant les trois fonctions de transformation de données

Importer des données en Java

Passons à la pratique !

Importer des données en Java

Preparing Video For Download...