Structuri de date în Tablesaw

Importul datelor în Java

Anthony Markham

VP Quant Developer

Structuri de date de bază

  • Table: Container principal (similar cu un DataFrame)
Table employees = Table.create("Employees");
  • Column: Stochează valori de același tip
StringColumn nameCol = StringColumn.create("Name");
  • Row: Reprezintă înregistrări individuale
Row firstRow = employees.row(0);
Importul datelor în Java

Metode ale tabelului

String tableName = employees.name();
employees
// Row and column counts
int rowCount = employees.rowCount();
int columnCount = employees.columnCount();
1000
5
Importul datelor în Java

Tipuri de coloane

  • Tipizare strictă = fiecare coloană are un tip de date fix
    • Îmbunătățește performanța și facilitează depanarea
  • Exemple:
    • StringColumn - Date text
    • IntColumn, DoubleColumn - Valori numerice
    • BooleanColumn - Valori True/False
    • Date de tip serie temporală:
      • DateColumn - date calendaristice (2024-03-05)
      • DateTimeColumn - dată și oră (2024-03-05T14:32)
Importul datelor în Java

Operații specifice tipurilor de coloane

  • Fiecare tip oferă operații specializate
// Using .mean() on DoubleColumn
DoubleColumn salary = employees.column("Salary");
double averageSalary = salary.mean();
Importul datelor în Java

Accesarea datelor

// Get a specific column
StringColumn names = employees.stringColumn("Name");

// Get a general column names = employees.column("Name");
// Get a value from a column String firstPerson = names.get(0);
// Get an entire row Row firstRow = employees.row(0);
// Get a value from a row double salary = firstRow.getDouble("Salary");
Importul datelor în Java

Selecții

  • Set de indici de rânduri care îndeplinesc o condiție
  • Exemple:
    • .isGreaterThan(), .isLessThan()
    • .isEqualTo()
    • .isAfter()

$$

// Create a selection of rows
Selection highEarners = employees.doubleColumn("Salary")
    .isGreaterThan(70000);
Importul datelor în Java

Filtrare pe baza unei selecții

// Create a selection of rows
Selection highEarners = employees.doubleColumn("Salary")
    .isGreaterThan(70000);


// Apply selection to get a filtered table Table highPaidEmployees = employees.where(highEarners);

$$

$$

  • .where() returnează un nou tabel
Importul datelor în Java

Operații booleene

  • Combinați selecțiile cu .and() și .or()
Selection recentHires = employees.dateColumn("HireDate")
    .isAfter(LocalDate.of(2020, 1, 1));

Selection highPaidRecent = highEarners.and(recentHires);
Importul datelor în Java

Să exersăm!

Importul datelor în Java

Preparing Video For Download...