Elaborazione CSV con Tablesaw

Importare dati in Java

Anthony Markham

VP Quant Developer

Lettura di file CSV

  • Leggi file CSV con read().csv()
import tech.tablesaw.api.Table;
// Leggi i dati
Table dataTable = Table.read().csv("data.csv");
  • Rileva automaticamente i tipi di colonna, creando un oggetto Table strutturato 💡
Importare dati in Java

Opzioni di lettura CSV

  • Usa CsvReadOptions per più controllo
import tech.tablesaw.io.csv.CsvReadOptions;
CsvReadOptions options = CsvReadOptions.builder("data.csv")

.separator(';') // Usa punto e virgola come delimitatore
.header(true) // La prima riga contiene intestazioni
.missingValueIndicator("N/A") // Tratta "N/A" come dato mancante
.build();
// Carica la tabella usando le opzioni personalizzate Table table = Table.read().csv(options);
Importare dati in Java

Scrittura di file CSV

  • Usa write().csv() per esportazione CSV base
  • Importato con la classe Table
  • Preserva tipi di colonna e struttura
  • Gestisce automaticamente caratteri speciali
// Scrivi dataTable in output.csv
dataTable.write().csv("output.csv");
Importare dati in Java

Opzioni di scrittura CSV

  • Usa CsvWriteOptions per specificare opzioni di scrittura
CsvWriteOptions writeOptions = CsvWriteOptions
    .builder("output.csv")

.header(true) // Includi intestazioni di colonna
.separator(';') // Usa punto e virgola come delimitatore
.quoteAlways(true) // Metti sempre tra virgolette
.lineEnd("\r\n") // Fine riga stile Windows
.build();
// Scrivi il CSV usando le opzioni personalizzate
Table.write().csv(writeOptions);
Importare dati in Java

Flusso di lavoro CSV

  • Flusso completo: leggi -> ispeziona -> elabora -> scrivi
  • Operazioni non distruttive (crea nuovi file) 📁
// Leggi CSV, modifica e riscrivi
Table students = Table.read().csv("students.csv");

// Visualizza struttura
System.out.println(students.structure());

// Salva come nuovo file
students.write().csv("students_processed.csv");
Importare dati in Java

Ayo berlatih!

Importare dati in Java

Preparing Video For Download...