Importación de datos en Java
Anthony Markham
VP Quant Developer
DoubleColumn celsius = DoubleColumn.create("Celsius", 0, 10, 20, 30);DoubleColumn fahrenheit = celsius.map(c -> c * 9.0/5.0 + 32); table.addColumns(fahrenheit.setName("Fahrenheit"));
| Celsius | Fahrenheit |
|---|---|
| 0.0 | 32.0 |
| 10.0 | 50.0 |
| 20.0 | 68.0 |
| 30.0 | 86.0 |
// Encuentra las ventas totales
double totalSales = table.doubleColumn("Sales").reduce(0, Double::sum);
250000
// Encuentra el máximo
double largeSales = table.doubleColumn("Sales").reduce(0, (acc, x) -> acc + (x > 5000 ? 1 : 0));
68
DoubleColumn difference = DoubleColumn.create("Difference"); table.forEach(row -> { double celsius = row.getDouble("Celsius"); double fahrenheit = row.getDouble("Fahrenheit"); difference.append(fahrenheit - celsius); });table.addColumns(difference);
| Celsius | Fahrenheit | Difference |
|---|---|---|
| 0.0 | 32.0 | 32.0 |
| 10.0 | 50.0 | 40.0 |
| 20.0 | 68.0 | 48.0 |
Table result = originalTable .where(numberColumn("Age").isGreaterThan(18)) // Filtrar por Edad > 18.addColumns( numberColumn("Income").map(i -> i * 1.1).setName("AdjustedIncome") );// Calcular ingreso promedio double avgIncome = result.doubleColumn("AdjustedIncome") .reduce(0.0, Double::sum) / result.rowCount();
map() - aplica una función para transformar valores de columnaforEach() - itera filas para acceder a múltiples columnasreduce() - agrega y resume datos en valores únicos
Importación de datos en Java