Fortgeschrittene Datenmanipulation

Daten in Java importieren

Anthony Markham

VP Quant Developer

Spalten entfernen und hinzufügen

  • Unnötige Spalten mit .drop() entfernen
  • Vorgefertigte oder kategorische Spalten mit .addColumns() hinzufügen
    • Anzahl der Zeilen muss gleich sein ❗
// Bestimmte Spalten entfernen
Table cleaned = dataTable.drop("TempID", "Notes");

// Zwei neue Spalten hinzufügen StringColumn statusCol = StringColumn.create("Status", "Active", "Inactive", "Active"); IntColumn priorityCol = IntColumn.create("Priority", 1, 2, 3); Table enhanced = dataTable.addColumns(statusCol, priorityCol);
Daten in Java importieren

Zeilen filtern mit .dropWhere()

  • Entfernt passende Zeilen
  • Verwendet Selection für Filterkriterien
// Eine Auswahlbedingung erstellen
Selection outliers = dataTable.doubleColumn("Value")
    .isLessThan(lowerBound)
    .or(dataTable.doubleColumn("Value")
        .isGreaterThan(upperBound));

// Zeilen entfernen, die der Bedingung entsprechen Table cleanedData = dataTable.dropWhere(outliers);
Daten in Java importieren

Zeilen zählen

  • .rowCount() - Zählt die Zeilen in einer Tabelle
// Zeilenanzahl vergleichen
System.out.println("Ursprüngliche Zeilen: " + dataTable.rowCount());
System.out.println("Nach dem Entfernen von Ausreißern: " + 
    cleanedData.rowCount());
Ursprüngliche Zeilen: 100
Nach dem Entfernen von Ausreißern: 95
Daten in Java importieren

Boolesche Filterung

  • Unterstützt and, or, not Methoden
// Komplexe boolesche Filterung
Selection techHighPaid = dataTable.stringColumn("Department")
    .isEqualTo("Technology")
    .and(dataTable.doubleColumn("Salary")
        .isGreaterThan(100000));

// Inverse Auswahl (NOT) Selection nonTechOrLowPaid = techHighPaid.not();
Daten in Java importieren

Transformation mit .map()

  • Wendet eine Funktion an, um Spaltenwerte zu transformieren
  • Unterstützt Lambda-Ausdrücke, die den Code lesbar machen
// Eine ganze Spalte mit einer vordefinierten Funktion transformieren
StringColumn upperNames = dataTable.stringColumn("Name").map(s -> s.toUpperCase());
// Werte in einer Spalte transformieren
DoubleColumn prices = dataTable.doubleColumn("Price");
DoubleColumn discounted = prices.map(price -> price * 0.9);

// Einen Namen setzen und eine Spalte hinzufügen discounted.setName("DiscountedPrice"); Table withDiscounts = dataTable.addColumns(discounted);
Daten in Java importieren

Zusammenfassung

  • .drop() - Spalten entfernen
  • .dropWhere() - Zeilen nach Bedingung entfernen
  • .addColumns() - Neue Spalten hinzufügen
  • .map() - Spaltenwerte transformieren
// Kernmethoden der fortgeschrittenen Manipulation
dataTable.drop("TemporaryID");              
dataTable.dropWhere(selection);             
dataTable.addColumns(newColumn);            
doubleCol.map(value -> value * 2);
Daten in Java importieren

Lass uns üben!

Daten in Java importieren

Preparing Video For Download...