Java 中的数据导入
Anthony Markham
VP Quant Developer
import tech.tablesaw.api.*import tech.tablesaw.api.DoubleColumnimport tech.tablesaw.api.StringColumnimport tech.tablesaw.aggregate.*
// 传统 Java 方法(繁琐)
import java.util.Arrays;
import java.util.List;
List<String> names = Arrays.asList("Anna", "Bob", "Carlos");
List<Integer> ages = Arrays.asList(25, 34, 42);
// 从零创建
Table employees = Table.create("Employees")
.addColumns(
StringColumn.create("Name", "John", "Lisa", "Omar"),
DoubleColumn.create("Salary", 50000, 60000, 55000)
);
// 由已有列创建
StringColumn dept = StringColumn.create("Department",
"Sales", "Marketing", "Engineering");
Table departments = Table.create("Departments", dept);
addColumns() 与 create()table.shape()table.columnNames()table.structure()table.first(n), table.last(n)// 打印维度
System.out.println(data.shape()); // [rows, columns]
[10, 4]
// 打印列名
System.out.println(table.columnNames());
[Day, Temperature, Precipitation]
// 打印详细结构
System.out.println(table.structure());
Structure of table
Index | Column Name | Column Type |
0 | Day | STRING |
1 | Temperature | DOUBLE |
2 | Precipitation | DOUBLE |
// 预览前三行
System.out.println(table.first(3));
table
Day | Temperature | Precipitation |
Monday | 22.5 | 0 |
Tuesday | 24 | 2.5 |
Wednesday | 23.2 | 5.2 |
table.addColumns(newColumn)// 新增一列
DoubleColumn bonus = DoubleColumn.create("Bonus", 1000, 1500, 2000);
employees = employees.addColumns(bonus);
// 删除列
employees = employees.removeColumns("StartDate");
// 重命名列
employees.column("Salary").setName("AnnualSalary");
// 获取列类型
employees.column("Salary").type();
ColumnType.INTEGER
$$
| 方法/语法 | 说明 |
|---|---|
Table.create("TableName") |
创建指定名称的表 |
StringColumn.create("ColumnName", values) |
创建字符串列 |
table.shape() |
返回维度 [行, 列] |
table.columnNames() |
返回表中的列名 |
table.structure() |
显示表结构信息 |
table.first(n) |
返回前 n 行 |
table.last(n) |
返回后 n 行 |
table.addColumns(newColumn) |
向表中添加新列 |
Java 中的数据导入