Processamento de CSV com Tablesaw

Importando dados em Java

Anthony Markham

VP Quant Developer

Lendo arquivos CSV

  • Leia arquivos CSV usando read().csv()
import tech.tablesaw.api.Table;
// Ler dados
Table dataTable = Table.read().csv("data.csv");
  • Detecta tipos de coluna automaticamente, criando um objeto Table estruturado 💡
Importando dados em Java

Opções de leitura de CSV

  • Use CsvReadOptions para mais controle
import tech.tablesaw.io.csv.CsvReadOptions;
CsvReadOptions options = CsvReadOptions.builder("data.csv")

.separator(';') // Usa ponto e vírgula como delimitador
.header(true) // Primeira linha contém cabeçalhos
.missingValueIndicator("N/A") // Trata "N/A" como dado ausente
.build();
// Carrega a tabela usando as opções personalizadas Table table = Table.read().csv(options);
Importando dados em Java

Escrevendo arquivos CSV

  • Use write().csv() para exportação básica de CSV
  • Importado com a classe Table
  • Preserva tipos de coluna e estrutura
  • Lida com caracteres especiais automaticamente
// Escreve dataTable para output.csv
dataTable.write().csv("output.csv");
Importando dados em Java

Opções de escrita de CSV

  • Use CsvWriteOptions para especificar opções de escrita
CsvWriteOptions writeOptions = CsvWriteOptions
    .builder("output.csv")

.header(true) // Inclui cabeçalhos de coluna
.separator(';') // Usa ponto e vírgula como delimitador
.quoteAlways(true) // Cita todos os campos
.lineEnd("\r\n") // Fim de linha estilo Windows
.build();
// Escreve o CSV usando as opções personalizadas
Table.write().csv(writeOptions);
Importando dados em Java

Fluxo de trabalho CSV

  • Fluxo completo: ler -> inspecionar -> processar -> escrever
  • Operações não destrutivas (cria novos arquivos) 📁
// Ler CSV, modificar e escrever de volta
Table students = Table.read().csv("students.csv");

// Ver estrutura
System.out.println(students.structure());

// Salvar como novo arquivo
students.write().csv("students_processed.csv");
Importando dados em Java

Vamos praticar!

Importando dados em Java

Preparing Video For Download...