Введение в Tablesaw

Импорт данных в Java

Anthony Markham

VP Quant Developer

Импорт Tablesaw

  • Библиотека для работы с данными
  • Основной импорт: import tech.tablesaw.api.*
  • Дополнительные импорты для конкретных функций, например:
    • import tech.tablesaw.api.DoubleColumn
    • import tech.tablesaw.api.StringColumn
  • Статистические операции: import tech.tablesaw.aggregate.*
1 https://jtablesaw.github.io/tablesaw/
Импорт данных в Java

Табличный формат

  • Данные организованы в строки и столбцы
  • Столбцы = переменные/признаки
  • Строки = наблюдения/экземпляры

Пример таблицы с подписанными столбцами и строками.

Импорт данных в Java

Табличный формат

  • Для хранения данных можно использовать массивы или коллекции
// Traditional Java approach (cumbersome)
import java.util.Arrays;
import java.util.List;
List<String> names = Arrays.asList("Anna", "Bob", "Carlos");
List<Integer> ages = Arrays.asList(25, 34, 42);
Импорт данных в Java

Создание таблицы

  • Варианты: с нуля, из внешнего файла или из существующих столбцов
// Creating from scratch
Table employees = Table.create("Employees")
    .addColumns(
        StringColumn.create("Name", "John", "Lisa", "Omar"),
        DoubleColumn.create("Salary", 50000, 60000, 55000)
    );
// From existing columns
StringColumn dept = StringColumn.create("Department", 
    "Sales", "Marketing", "Engineering");
Table departments = Table.create("Departments", dept);
  • Методы addColumns() и create()
Импорт данных в Java

Метаданные таблицы

  • Размерность: table.shape()
  • Имена столбцов: table.columnNames()
  • Структура таблицы: table.structure()
  • Просмотр данных: table.first(n), table.last(n)
// Print dimensions
System.out.println(data.shape());  // [rows, columns]
[10, 4]
Импорт данных в Java

Метаданные таблицы

// Print column names
System.out.println(table.columnNames());
[Day, Temperature, Precipitation]
// Print detailed structure
System.out.println(table.structure());
         Structure of table          
 Index  |   Column Name   |  Column Type  |
     0  |            Day  |       STRING  |
     1  |    Temperature  |       DOUBLE  |
     2  |  Precipitation  |       DOUBLE  |
Импорт данных в Java

Метаданные таблицы

// Preview first three rows
System.out.println(table.first(3));
                  table                  
    Day     |  Temperature  |  Precipitation  |
    Monday  |         22.5  |              0  |
   Tuesday  |           24  |            2.5  |
 Wednesday  |         23.2  |            5.2  |
Импорт данных в Java

Добавление столбцов

  • Добавление столбцов: table.addColumns(newColumn)
// Add a new column
DoubleColumn bonus = DoubleColumn.create("Bonus", 1000, 1500, 2000);
employees = employees.addColumns(bonus);
Импорт данных в Java

Удаление и переименование столбцов

// Remove a column
employees = employees.removeColumns("StartDate");
// Rename a column
employees.column("Salary").setName("AnnualSalary");
// Get the type of column
employees.column("Salary").type();
ColumnType.INTEGER

$$

  • Изменённые таблицы возвращаются 💡
Импорт данных в Java

Итоги

Метод/Синтаксис Описание
Table.create("TableName") Создаёт новую таблицу с указанным именем
StringColumn.create("ColumnName", values) Создаёт строковый столбец
table.shape() Возвращает размерность в виде [строки, столбцы]
table.columnNames() Возвращает имена столбцов таблицы
table.structure() Отображает структуру таблицы
table.first(n) Возвращает первые n строк таблицы
table.last(n) Возвращает последние n строк таблицы
table.addColumns(newColumn) Добавляет новый столбец в таблицу
1 https://www.javadoc.io/doc/tech.tablesaw/tablesaw-core
Импорт данных в Java

Давайте потренируемся!

Импорт данных в Java

Preparing Video For Download...